0

次のようなファイル名 clfile.me があります。

44433430,"FALSE"
33095934,"TRUE"
41549968,"TRUE"
37945528,"FALSE"
18284764,"FALSE"
15007934,"FALSE"

番号は AIX PID です。PID を実行中のプロセスに一致させるコマンドがあります。

while read p; do
    ps -ef | grep $p | grep 'myproram' | grep -v grep | awk "{ print \$2 }" >> clout.me
done < clfile.me

上記は機能しますが、grep コマンドから一致した PID しか表示されません。元のファイルから、一致する PID と TRUE または FALSE の値を確認できるようにしたいと考えています。私のgrepコマンドに一致するPIDで元のファイルをフィルタリングする方法を尋ねていると思います。

何かご意見は?

ありがとうクリス

4

1 に答える 1

1

少し時間がかかりましたが、私はそれを手に入れました!

cat /dev/null > clout.me
while read p; do
    x=$(awk '{ print $1 }')
    ps -ef | grep x | grep 'myprogram' | grep -v grep | awk "{ print \$2 }" >> clout.me
done < clfile.me

awk 'FNR==NR{A[$1]=1;next} A[$1]' clout.me clfile.me
于 2012-09-06T15:19:42.143 に答える