これは私のps auxの出力です。
ps aux | grep "node"
root 2501 0.0 3.4 720400 68512 ? Sl 16:09 0:03 node /etc/skbx/host/skbx.js 8081 tula13 8082 8084 8085 10.8.0.6
root 20586 0.0 0.1 17396 2664 pts/16 S+ 21:29 0:00 grep --color=auto node
2番目のものを無視してください。ノードプロセスがあります。 Bashでskbx.jsを実行しているノードプロセスのPIDを正確に把握する必要があります。
どうすればいいですか?ありがとうございます。
ベストアンサー1
PIDを抽出するために出力をフィルタリングする必要はないので、既知のコマンドラインのPIDを見つける場合は通常pgrep
好まれます。 withを使用してコマンドライン全体を一致させるps | grep
ことができます。pgrep
-f
pgrep -f 'node /etc/skbx/host/skbx.js'
親プロセスIDや制御端末などの基準でプロセスを見つけることもできます。
pgrep
インストールされていない場合はgrep
パイプに使用できます。次の例では、指定されたパターンの文字クラスを使用して出力に表示されないようにgrep
します。これは、出力を入力grep
にパイプしたり、それに類似したものよりも安価です。grep -v grep
ps aux | grep '[n]ode /etc/skbx/host/skbx.js' | awk '{print $2}'
grep
出力にリストされているコマンドには、ps
使用された結果パターンと一致しない角括弧リテラルが含まれますgrep
。