Я пытаюсь создать список PID для передачи в strace. Мне нужен только PID php-fpm. Я могу получить правильный результат, используя grep с awk, но я ищу ответ только для awk. Вот что я сделал.
Это дает желаемый результат:
$ ps ajxf |grep '[p]hp-fpm: pool' |awk '{print $2}'
21547
21548
21549
21938
31131
31132
31133
31189
36283
10549
12179
12893
12964
12989
13565
14420
14421
15848
17737
Этот не сделал:
$ ps ajxf |awk '/php-fpm: pool/{if (NR!=1) {print $2}}'
22903 <--- This is the PID of the awk
21547
21548
21549
21938
31131
31132
31133
31189
36283
10549
12179
20328
20392
20393
20618
22006
22793
22794
22804
Я думаю ты найдешь пидоф намного проще в использовании.
pidof php
24293 19810 19467
Ты можешь использовать ~
чтобы соответствовать полю и ^
чтобы привязать совпадение к началу поля.
awk '$6 ~ /^something/ {print $2}'