pgrep
และpkill
สาธารณูปโภคถูกแนะนำในดวงอาทิตย์ Solaris 7 และเป็นg33klord ตั้งข้อสังเกตที่พวกเขาใช้รูปแบบเป็นอาร์กิวเมนต์ที่ถูกจับคู่กับชื่อของกระบวนการการทำงานของ ในขณะที่pgrep
พิมพ์รายการกระบวนการที่ตรงกันเพียง แต่pkill
จะส่งสัญญาณที่ระบุ (หรือSIGTERM
โดยค่าเริ่มต้น) ไปยังกระบวนการ ตัวเลือกทั่วไปและซีแมนทิกส์ระหว่างpgrep
และpkill
มีประโยชน์เมื่อคุณต้องการระวังและตรวจสอบกระบวนการจับคู่รายการด้วยpgrep
ก่อนแล้วจึงดำเนินการฆ่าpkill
ต่อ pgrep
และpkill
ให้บริการโดยที่procpsแพคเกจซึ่งนอกจากนี้ยังมีอื่น ๆ/proc
ระบบสาธารณูปโภคไฟล์เช่นps
, top
, free
, uptime
หมู่คนอื่น ๆ
killall
คำสั่งที่ให้บริการโดยpsmiscแพคเกจและแตกต่างจากpkill
ที่ตามค่าเริ่มต้นตรงกับชื่อโต้แย้งว่า (ไม่เกิน 15 ตัวอักษรแรก) เมื่อพิจารณากระบวนการสัญญาณจะถูกส่งไป -e
, --exact
ตัวเลือกที่สามารถระบุยังจำเป็นต้องมีการแข่งขันที่แน่นอนสำหรับชื่อที่ยาวเกิน 15 ตัวอักษร นี้จะทำให้ค่อนข้างปลอดภัยในการใช้เมื่อเทียบกับkillall
pkill
หากอาร์กิวเมนต์ที่ระบุมี/
อักขระสแลช ( ) อาร์กิวเมนต์จะถูกตีความเป็นชื่อไฟล์และกระบวนการที่เรียกใช้ไฟล์นั้นจะถูกเลือกเป็นผู้รับสัญญาณ killall
นอกจากนี้ยังสนับสนุนการจับคู่แสดงออกปกติของชื่อกระบวนการผ่าน-r
, --regexp
ตัวเลือก
มีความแตกต่างอื่น ๆ เช่นกัน killall
คำสั่งเช่นมีตัวเลือกสำหรับกระบวนการจับคู่ตามอายุ ( -o
, --older-than
และ-y
, --younger-than
) ในขณะที่pkill
สามารถบอกว่าจะฆ่าเพียงกระบวนการในขั้วที่เฉพาะเจาะจง (ผ่าน-t
ตัวเลือก) เห็นได้ชัดว่าทั้งสองคำสั่งมีเฉพาะ niches
โปรดทราบว่าkillall
คำสั่งเกี่ยวกับการสืบทอดระบบจากUnix System V (โดยเฉพาะอย่างยิ่งSolaris ของ Sun , AIX ของ IBMและHP-UX ของ HP ) ฆ่ากระบวนการทั้งหมดที่ถูกสังหารได้โดยผู้ใช้รายใดโดยเฉพาะการปิดระบบได้อย่างมีประสิทธิภาพหากรันโดย root
ยูทิลิตี้ psmisc Linux ได้รับการพอร์ตไปยังBSD (และในส่วนขยายMac OS X ) ดังนั้นจึงkillall
มีความหมายตาม "ความหมายกระบวนการฆ่าตามชื่อ"