我々はps ax
次のような結果を得る。
ps ax
PID TTY STAT TIME COMMAND
1 ? Rs 611:56 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
2 ? S 4:46 [kthreadd]
3 ? R 3499:33 [ksoftirqd/0]
5 ? S< 0:00 [kworker/0:0H]
7 ? S 16:24 [migration/0]
8 ? S 0:00 [rcu_bh]
9 ? S 0:00 [rcuob/0]
10 ? S 0:00 [rcuob/1]
11 ? S 0:00 [rcuob/2]
12 ? S 0:00 [rcuob/3]
13 ? S 0:00 [rcuob/4]
14 ? S 0:00 [rcuob/5]
15 ? S 0:00 [rcuob/6]
16 ? S 0:00 [rcuob/7]
17 ? S 0:00 [rcuob/8]
18 ? S 0:00 [rcuob/9]
19 ? S 0:00 [rcuob/10]
たとえば、3番目のフィールドでRをキャプチャしたいとします。
ps ax | awk '$3 ~ /R/ { print }'
139 ? R 1935:31 [rcuos/1]
3番目のフィールドでRとDの両方をキャプチャしようとしています。
この場合、3番目のフィールドでエーテルRまたはDをキャプチャするにはどの構文を使用する必要がありますか?
ベストアンサー1
誰でも
ps -ax | awk '$3 ~ /R|D/ '
または
ps -ax | awk '$3 == "R" || $3 == "D" '
暗黙的な操作は次のとおりです。print
o
オプションを使用して、ps
必要なフィールドを変更または選択できます。
ps -a -o stat,pid,args | awk '$1 ~ /[DR]/ { $1="" ; print } '