เหตุใดฉันจึงไม่สามารถจัดการกระบวนการได้


12
$ ps aux | grep -i ssh
USER      4364  0.0  0.0   9004  1032 ?        Ss   12:20   0:00 ssh -v -fND localhost:4000 USERNAME@SERVER-IP-ADDRESS

$ pgrep localhost:4000

ทำไมมันไม่ทำงาน

คำตอบ:


25

โดยค่าเริ่มต้นpgrep(1)จะจับคู่กับชื่อกระบวนการเท่านั้น หากคุณต้องการจับคู่กับบรรทัดคำสั่งแบบเต็มให้ใช้-fตัวเลือก:

$ pgrep -f localhost:4000

8

มีลักษณะที่เป็นหน้าคนสำหรับ pgrep มันไม่ได้เป็นเพียงนามแฝงสำหรับการเรียกใช้ ps ด้วยคอลัมน์จำนวนมากจากนั้นจึงพิมพ์ข้อความออกมา จริง ๆ แล้วมันค้นหาเขตข้อมูลเฉพาะสำหรับค่า โดยค่าเริ่มต้นก็มีลักษณะที่ชื่อกระบวนการเมื่อทำการค้นหาและส่งกลับPID คุณสามารถค้นหาบรรทัดคำสั่งแบบเต็มได้โดยการเพิ่ม-fตัวเลือก คุณยังสามารถค้นหาฟิลด์อื่น ๆ ที่อาจมีประโยชน์เช่นการจับคู่เทอร์มินัลที่กระบวนการกำลังทำงานอยู่หรือรหัสกลุ่ม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.