บทช่วยสอนฉบับย่อนี้สอนให้คุณฆ่ากระบวนการใน Linux โดยใช้รหัสกระบวนการ สิ่งนี้มีประโยชน์อย่างยิ่งในการฆ่าโปรแกรมที่ไม่ตอบสนอง

คุณสามารถหยุดโปรแกรมในเทอร์มินัล Linux ได้ง่ายๆ โดยกดปุ่ม Ctrl+C แต่บ่อยครั้งที่คุณต้อง ‘ฆ่า’ โปรแกรมที่ไม่ตอบสนอง ใน Windows คุณมีตัวจัดการงานสำหรับสถานการณ์นี้ คุณสามารถใช้ตัวจัดการงานใน Linux ได้เช่นกัน แต่วิธีบรรทัดคำสั่งนั้นดีกว่ามากและมีประสิทธิภาพในการจัดการโปรแกรมที่ไม่ตอบสนอง

การใช้เทอร์มินัลจะดีกว่าเพราะเครื่องมือที่ใช้ GUI อาจไม่แสดงกระบวนการที่ซ่อนอยู่ซึ่งยังคงทำงานอยู่ เครื่องมือ GUI อาจไม่พร้อมใช้งานหากคุณใช้รุ่นเซิร์ฟเวอร์ของระบบ Linux

วิธีฆ่ากระบวนการใน Linux

หากคุณเรียกใช้แอปพลิเคชัน โปรแกรมจะเรียกใช้กระบวนการบางอย่างในเบื้องหลัง หากคุณต้องการปิดแอปพลิเคชันนี้อย่างเข้มงวด คุณสามารถฆ่ากระบวนการที่เกี่ยวข้องได้

ในการฆ่ากระบวนการ คุณต้องทราบรหัสกระบวนการ (PID) ส่วนถัดไปจะบอกวิธีค้นหา ID กระบวนการของโปรแกรม

ขั้นตอนที่ 1: ค้นหา ID กระบวนการ (PID) ของโปรแกรม

คุณสามารถใช้หลายวิธีในการค้นหา PID ของกระบวนการ

หากคุณทราบชื่อของกระบวนการ คุณสามารถใช้คำสั่ง pidof ในลักษณะนี้:

pidof <program_name>

คุณสามารถใช้ความช่วยเหลือในการกรอกแท็บเพื่อค้นหาชื่อของโปรแกรม ข้อดีของคำสั่งนี้คือจะให้ PID ของกระบวนการทั้งหมดที่เริ่มต้นโดยโปรแกรม นี่คือตัวอย่าง:

pidof slack 
9734 9718 9716 9708 9622 9619

หากคำสั่ง pidof ไม่ส่งผลใดๆ แสดงว่าไม่มีกระบวนการทำงานของโปรแกรมนั้น หรือชื่อโปรแกรมที่คุณใช้ไม่ถูกต้อง

หากคุณไม่ทราบชื่อโปรแกรมที่แน่นอน คุณสามารถลองใช้ ps คำสั่ง. คำสั่ง ps นี้ใช้เพื่อดูกระบวนการที่ทำงานอยู่บนระบบ คุณสามารถใช้คำสั่ง grep กับชื่อโปรแกรม (หรืออะไรก็ตามที่คุณจำได้)

ps aux | grep -i name of your desired program

คำสั่ง ps aux คืนค่ากระบวนการทำงานทั้งหมดบนระบบ และ grep จะแสดงบรรทัดที่ตรงกับชื่อโปรแกรมในภายหลัง ผลลัพธ์ของคำสั่งจะเป็นดังนี้:

ดังที่แสดงในภาพด้านบน คุณสามารถรับ ID กระบวนการของโปรแกรม/กระบวนการในคอลัมน์ที่สอง แค่ ละเว้นบรรทัดด้วย –color =auto.

ขั้นตอนที่ 2: ฆ่ากระบวนการโดยใช้ PID

เมื่อคุณมี PID ของแอปพลิเคชันที่ต้องการแล้ว ให้ใช้คำสั่งต่อไปนี้เพื่อฆ่ากระบวนการ:

sudo kill -9 process_id

หากคุณมีรหัสกระบวนการมากกว่าหนึ่งรายการ คุณสามารถฆ่ารหัสทั้งหมดพร้อมกันได้โดยระบุ PID ทั้งหมด

sudo kill -9 process_id_1 process_id_2 process_id_3

คุณยังสามารถรวมคำสั่ง kill กับคำสั่ง pidof เพื่อฆ่ากระบวนการทั้งหมดของโปรแกรม

sudo kill -9 `pidof programe_name` 

แน่นอน คุณต้องแทนที่ program_name ด้วยชื่อของโปรแกรมที่คุณต้องการฆ่า

เคล็ดลับพิเศษ: ใช้ killall เพื่อฆ่ากระบวนการทั้งหมดของโปรแกรมที่กำหนด

หากคุณทราบชื่อโปรแกรม คุณสามารถใช้คำสั่ง killall ที่ยอดเยี่ยมและฆ่ากระบวนการทั้งหมดของโปรแกรมนั้นได้ด้วยคำสั่งเดียว

killall program_name

คุณจะฆ่าโปรแกรมใน Linux ได้อย่างไร?

ฉันหวังว่าบทช่วยสอนสั้นๆ สั้นๆ นี้จะช่วยคุณได้ วิธีที่คุณชื่นชอบในการฆ่าโปรแกรมใน Linux คืออะไร? ตัวจัดการงาน kill, killall หรือ xkill?

ชอบสิ่งที่คุณอ่าน? กรุณาแบ่งปันกับผู้อื่น