PID
以下を使って(2列目)を表示できます。
ps -ef | grep runner | awk {'print$2'}
2432
6346
6348
6350
6352
7407
7410
7416
10824
17305
17494
29658
ところで私がお見せしたいのは(8列)pwdx <PID>
です。COMMAND
どうすればいいですか?
ベストアンサー1
awkを使ってps出力をフィルタリングするのではなく、ps -oオプションを使って必要なものを取得します。
ps -e -o pid,comm
上記のように実行する必要があります。印刷の詳細については、psのマニュアルページを参照してください。
アップデート:正しく機能していないことがわかりましたpwdx
。サイズに合わせて着てみてください。
#!/bin/bash
ps -o pid= -o comm= |
while read LINE
do
eval $(echo $LINE |
awk '{pid=$1; comm=$2; printf "echo -n \"%s \"; pwdx %s\n", comm, pid}' )
done
必要なプロセスを取得するには、フラグを追加する必要がありますps
。上記のプロセスは、ユーザーIDのプロセスのみを示しています。