ฆ่ากระบวนการทั้งหมดที่เป็นของผู้ใช้ด้วย pkill

การตรวจสอบกิจกรรมและเครื่องมือบรรทัดคำสั่ง 'ฆ่า' แบบเดิมสามารถจัดการกับความต้องการในการเลิกใช้งานได้มากที่สุด แต่ถ้าคุณจำเป็นต้องกำหนดเป้าหมายและฆ่ากระบวนการทั้งหมดที่อยู่ในบัญชีผู้ใช้เพียงครั้งเดียวคุณรู้ว่าอาจเป็นงานที่น่าผิดหวัง แม้ว่าการตรวจสอบกิจกรรมช่วยให้คุณสามารถจัดเรียง "กระบวนการของผู้ใช้อื่น ๆ " และเลือกโพรเซสหลายรายการได้ แต่ก็ไม่อนุญาตให้คุณยุติกระบวนการหลายรายการในเวลาเดียวกัน ในทำนองเดียวกันคำสั่งฆ่ามาตรฐานและคำสั่ง killall มีจุดมุ่งหมายโดยเฉพาะสำหรับกระบวนการเฉพาะและไม่ใช่งานเดียวที่เป็นของบัญชีผู้ใช้เฉพาะ นี่คือที่มาของคำสั่ง 'pkill' ซึ่งทำให้ง่ายต่อการฆ่าทุกกระบวนการเดียวของผู้ใช้ผ่านทางเทอร์มินัล

วิธีการฆ่ากระบวนการทั้งหมดจากผู้ใช้ที่มี pkill

ไวยากรณ์พื้นฐานสำหรับการใช้ pkill เพื่อฆ่ากระบวนการทั้งหมดของผู้ใช้มีดังนี้:

pkill -u username

ตรวจสอบว่ากระบวนการทั้งหมดของผู้ใช้นั้นถูกยกเลิกโดยใช้ flag -u ในคำสั่ง ps:

ps -u username

สมมติว่าทุกสิ่งทุกอย่างไปตามที่ตั้งใจไว้คุณจะพบรายการว่างที่รายงานกลับ

pkill ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่หมายถึงชื่อผู้ใช้ของ "TestUser" จะเหมือนกับ "testuser"

ถ้าคุณจะลองใช้ตัวเองนี้จะเป็นการดีที่สุดที่จะใช้การสลับผู้ใช้อย่างรวดเร็วเพื่อเริ่มต้นการเข้าสู่ระบบใหม่ด้วยบัญชีผู้ใช้รายอื่นหรือเพื่อใช้เซิร์ฟเวอร์ ssh และใช้งานเครื่องอื่นบนเครื่อง Mac การใช้ pkill บนชื่อผู้ใช้ที่ใช้งานของคุณเองจะทำให้กระบวนการทั้งหมดยุติลงซึ่งบางส่วนรีเฟรชทันที แต่กระบวนการพื้นหลังจำนวนมากจะไม่เริ่มทำงานอีกโดยอัตโนมัติ สิ่งนี้นำไปสู่พฤติกรรมแปลก ๆ ทุกรูปแบบและขึ้นอยู่กับว่าคุณใช้งานอะไรบ้างไม่ต้องแปลกใจอย่างมากที่พบว่าระบบปฏิบัติการจะไม่สามารถใช้งานได้โดยที่คุณอาจต้องออกจากระบบอีกครั้งหรือแม้กระทั่งรีบูตเครื่องถ้าผู้ใช้ที่ใช้งานอยู่ บัญชีที่กำหนดเป้าหมายโดย pkill เป็นทั้งระดับรากหรือระดับผู้ดูแลระบบ

คำสั่ง pkill เป็นบิตของ blowtorch เมื่อชี้ไปที่ชื่อผู้ใช้และสามารถถูกคิดว่าเป็นวิธีการบังคับให้ออกจากทุกอย่างเป็นของผู้ใช้ที่ล็อกอินโดยอัตโนมัติ แต่ยังสามารถทำให้เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการแก้ไขปัญหาและเมื่อต้องจัดการกับความตาย หรือกระบวนการผีดิบที่ยังคงเหมือนเดิมแม้ว่าผู้ใช้จะล็อกเอาต์ก็ตาม

เราได้กล่าวถึงคำสั่ง pkill ก่อนที่จะฆ่ากระบวนการด้วย wildcards และ apps / process ที่เฉพาะเจาะจงซึ่งเป็นของผู้ใช้รายเดียวและแม้ว่าจะเป็นส่วนเสริมล่าสุดของ Mac ตั้งแต่ OS X Mountain Lion แต่ก็มาถึงในโลกลีนุกซ์มานานแล้ว .