Sistemimdeki bir işleme HUP göndermek için pidof veya pgrep kullanmaya çalışıyorum. Sorun sadece kesin bir parametre ile süreci öldürmek istiyorum olmasıdır.
Bu 'ps awx'in çıktısıdır
657 ? S 0:00 processname software
658 ? S 0:00 processname demo
659 ? S 0:00 processname test
Bunlardan birini yaparak:
pidof processname
pgrep processname
İşlem adı ile başlayan tüm işlemlerin listesini alırsınız, ancak şöyle bir şey yapmak istiyorum:
pidof processname test
pgrep processname test
Yalnızca ihtiyacım olan PID'yi almak için (bu örnekte 659 olurdu)
GÜNCELLEME
Pgrep üzerinde -f bayrağını kullanarak sadece istediğimi yapar, yaparak:
pgrep -f "processname test"
Doğru cevabı alacaksın.
-f
çünkü tam komut satırında eşleşmek istiyorsunuz. Pgrep'in düzenli ifadeler üzerinde çalıştığını ve böylece nispeten karmaşık eşleme yapabileceğinizi unutmayın.