Я пытаюсь использовать pidof или pgrep, чтобы отправить HUP процессу в моей системе. Проблема в том, что я хочу убить процесс только с помощью точного параметра.
Это результат 'ps awx'
657 ? S 0:00 processname software
658 ? S 0:00 processname demo
659 ? S 0:00 processname test
Сделав одно из следующих действий:
pidof processname
pgrep processname
Вы получаете список всех процессов, начинающихся по имени процесса, но я хотел бы сделать что-то вроде:
pidof processname test
pgrep processname test
Чтобы получить только нужный мне PID (в этом примере это 659)
ОБНОВИТЬ
Используя флаг -f в pgrep, я просто делаю то, что я хотел:
pgrep -f "processname test"
Вы получите правильный ответ.
$ ps aux |grep [d]evio
user01 10220 0.0 0.1 5376 2424 pts/5 S+ 11:41 0:00 ssh devio
$ pgrep -f "ssh devio"
10220
$ pkill -0 -f "ssh devio" ; echo $?
0