วิธีรับ pid ของกระบวนการที่กำลังรันโดยใช้คำสั่งเดียวที่แยกเอาต์พุตของ ps
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Super User อพยพ 7 ปีที่ผ่านมา ฉันกำลังมองหาบรรทัดเดียวที่คืนค่า pid ของกระบวนการทำงาน ปัจจุบันฉันมี: ps -A -o pid,cmd|grep xxx|head -n 1 pid, commandและส่งกลับกำปั้น ฉันต้องการเฉพาะหมายเลขแรกจากผลลัพธ์และละเว้นส่วนที่เหลือ ฉันคิดว่าsedหรือawkจะช่วยที่นี่ แต่ประสบการณ์ของฉันกับพวกเขามี จำกัด นอกจากนี้ยังมีปัญหาอื่นมันจะคืนค่า pid ของ grep หาก xxx ไม่ทำงาน เป็นเรื่องสำคัญมากที่จะมีบรรทัดเดียวเพราะฉันต้องการนำเอาท์พุทกลับมาใช้เพื่อทำอย่างอื่นเช่นฆ่ากระบวนการนั้น