killall Dock ทำอะไรบ้าง และควรใช้เมื่อไหร่คำตอบสั้น ๆ มันบังคับออกจาก Dock และ macOS จะเริ่มสำเนาใหม่ทันที
ไม่มีอะไรถูกลบและไม่มีอะไรถูกรีเซ็ต แอป หน้าต่าง และไฟล์ของคุณไม่ถูกแตะต้อง
killall Dock
วางข้อความนั้นลงในเทอร์มินัลแล้วกด Return Dock จะหายไปประมาณหนึ่งวินาทีแล้วกลับมา ไม่มีการยืนยันและไม่มีผลลัพธ์แสดง ซึ่งเป็นเรื่องปกติ killall จะไม่แสดงอะไรเมื่อทำงานสำเร็จ
killall เป็นคำสั่ง Unix ที่หาโพรเซสที่กำลังทำงานทุกตัวที่มีชื่อตามที่ระบุ แล้วสั่งให้มันหยุด Dock คือชื่อโพรเซส ขึ้นต้นด้วยตัว D ตัวใหญ่ เพราะ macOS รัน Dock เป็นแอปพลิเคชันพื้นหลังธรรมดาแทนที่จะเป็นส่วนหนึ่งของระบบเอง
Dock ถูกดูแลโดย launchd ซึ่งถูกสั่งให้ทำให้มันมีชีวิตอยู่ต่อไป ดังนั้นทันทีที่คุณสั่งปิดมัน launchd จะเริ่มมันขึ้นมาใหม่ นั่นคือกลไกทั้งหมด ไม่มีคำสั่ง "รีสตาร์ต Dock" ใน macOS ดังนั้นคุณปิดมันแล้วปล่อยให้ระบบเอามันกลับมา
Dock ใหม่จะอ่านการตั้งค่าของมันใหม่ตอนที่มันเปิดขึ้นมา นี่จึงเป็นเหตุผลที่คำสั่งนี้ปรากฏอยู่ท้ายเกือบทุกบทเรียนเรื่อง Dock การเปลี่ยนการตั้งค่าด้วย defaults write จะเปลี่ยนแค่ค่าที่เก็บไว้เท่านั้น Dock ที่กำลังทำงานอยู่จะไม่รู้จนกว่ามันจะรีสตาร์ต
ใช่ และมันเป็นวิธีปกติในการใช้การเปลี่ยนแปลงของ Dock มันไม่ลบอะไร ไม่แตะไฟล์ใด ๆ และไม่ปิดแอปไหนเลย แอปแบบเต็มจอและ Spaces ของ Mission Control ของคุณยังคงเหมือนเดิม
ผลข้างเคียงที่เห็นได้มีเพียงเล็กน้อย แอปที่กำลังกระโดดหรือแสดงแบดจ์จะหยุดชั่วขณะที่ Dock หายไป และถ้า Dock ของคุณตั้งให้ซ่อน มันจะกลับมาในสถานะซ่อนเหมือนเดิม
defaults write com.apple.dock ใด ๆ หากไม่มีมัน การเปลี่ยนแปลงของคุณจะอยู่ในไฟล์การตั้งค่าโดยไม่มีผลอะไรเลยนี่คือจุดที่คนมักติดกับ killall Dock ไม่ได้รีเซ็ต Dock มันแค่รีสตาร์ตด้วยการตั้งค่าเดิมที่มันมีอยู่แล้ว ถ้า Dock ของคุณผิดขนาดหรือมีแอปผิด การรีสตาร์ตมันไม่เปลี่ยนอะไรเลย
การรีเซ็ตเป็นคำสั่งที่ต่างออกไป และต่างจากคำสั่งนี้ตรงที่มันจะทิ้งการตั้งค่าไปจริง ๆ
defaults delete com.apple.dock; killall Dock
นั่นจะลบไฟล์การตั้งค่า Dock ทั้งหมดแล้วรีสตาร์ต Dock ซึ่งจะทำให้มันกลับไปเป็นการตั้งค่าจากโรงงาน แอปที่คุณปักหมุดไว้ทุกตัวจะหายไป พร้อมกับขนาด ตำแหน่ง และการตั้งค่าซ่อนของคุณ และไม่มีอะไรกู้คืนได้เลย killall ตอนท้ายมีไว้แค่เพื่อให้การลบมีผลเท่านั้น อ่าน วิธีรีเซ็ต Dock ของ Mac ก่อนที่จะรันมัน
ถ้าคุณอยากหลีกเลี่ยงเทอร์มินัล ตัวตรวจสอบกิจกรรม ก็ทำหน้าที่เดียวกันได้ เปิดมัน ค้นหา Dock เลือกมัน คลิกปุ่มหยุดในแถบเครื่องมือ แล้วเลือก Quit launchd จะรีสตาร์ตมันเหมือนเดิมทุกประการ
การลงชื่อออกแล้วกลับเข้าใหม่ก็รีสตาร์ต Dock ด้วยเช่นกัน พร้อมกับทุกอย่างอื่น นี่จึงเป็นเหตุผลที่มันเป็นทางที่ช้ากว่าเพื่อผลลัพธ์เดียวกัน
รันคำสั่ง Dock บ่อยใช่ไหม ตัวสร้างคำสั่งล็อก Dock ของเราสร้างให้คุณและใส่ killall Dock ไว้ตอนท้ายด้วย เพื่อไม่ให้คุณลืมมันเลย
ต้องรันคำสั่งพวกนี้ซ้ำ ๆ ใช่ไหม วิธีล็อก Dock บน Mac เทียบกันสามวิธี
ไม่ มันแค่หยุดโพรเซส Dock และ macOS จะเริ่มโพรเซสใหม่ทันที การตั้งค่า แอปที่ปักหมุด และไฟล์ต่าง ๆ ไม่ถูกแตะต้องเลย คำสั่งที่ลบสิ่งต่าง ๆ จริง ๆ คือ defaults delete com.apple.dock
เพราะ killall จับคู่กับชื่อโพรเซสเป๊ะ และโพรเซสนี้ชื่อ Dock การพิมพ์ killall dock จะได้ผลลัพธ์ "No matching processes belonging to you were found" และไม่ทำอะไรเลย
ไม่ Dock เป็นโพรเซสแยกต่างหากจากทุกอย่างที่มันแสดง แอปของคุณยังทำงานต่อไป และหน้าต่างของคุณยังอยู่ที่เดิม
ไม่ Dock รันในฐานะคุณ ดังนั้นคุณออกจากมันได้โดยไม่ต้องใช้สิทธิ์ระดับสูง คู่มือที่บอกให้ใช้ sudo killall Dock กำลังมุ่งไปที่ Dock ของผู้ใช้คนอื่น ซึ่งไม่ใช่สิ่งที่คุณต้องการ
เกิดขึ้นได้ยาก และมักเป็นแค่ช้าเท่านั้น ถ้ามันหายไปจริง ๆ รัน open -a Dock หรือลงชื่อออกแล้วเข้าใหม่ การรีสตาร์ตจะเรียกมันกลับมาเสมอ เพราะ launchd เริ่มมันเป็นส่วนหนึ่งของเซสชันเข้าสู่ระบบของคุณ
คนส่วนใหญ่รัน killall Dock เพราะการตั้งค่า Dock ถูกยกเลิกอยู่เรื่อย Still Dock ล็อก Dock ของ Mac คุณ ขนาด ตำแหน่ง เนื้อหา และการตั้งค่าซ่อนล้วนคงอยู่ และใช้การเปลี่ยนแปลงโดยไม่ต้องใช้เทอร์มินัล
ใช้มากกว่าหนึ่งจอใช่ไหม Dock ยังกระโดดข้ามจอด้วย ซึ่งเป็นปัญหาแยกต่างหากที่มีวิธีแก้ของตัวเอง วิธีคงให้ Dock ของ Mac อยู่จอเดียว
ถ้า Dock ไม่ได้แค่ทำงานผิดปกติแต่หายไปเลย ให้อ่าน Dock ของ Mac ฉันหายไป แทน