ปิดการใช้งาน "เปิด Windows ใหม่เมื่อเข้าสู่ระบบย้อนกลับ" ใน Mac OS X สิ้นเชิง

คุณอาจสังเกตว่าเมื่อคุณออกจากระบบหรือรีบูต Mac OS X คุณจะได้หน้าต่างโต้ตอบพร้อมกับช่องทำเครื่องหมายถัดจาก "เปิดหน้าต่างอีกครั้งขณะล็อกอิน" ซึ่งจะคืนค่าแอพพลิเคชันที่เปิดอยู่และหน้าต่างทั้งหมดของคุณ

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

แม้ว่านี่จะเป็นส่วนหนึ่งของคุณลักษณะ Resume ของ OS X แต่สิ่งนี้แตกต่างจากการปิดการใช้งานแอ็พพลิเคชัน Resume อย่างสมบูรณ์หรือในแต่ละแอ็พพลิเคชันเนื่องจากการเริ่มต้นระบบใหม่นี้และการล็อกเอาต์

การปิด "เปิดหน้าต่างใหม่เมื่อลงชื่อเข้าใช้" โดยการทำให้ไม่มีประโยชน์

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

วางต่อไปนี้ ลงในบรรทัดเดียว ภายในเทอร์มินัลและตีกลับ:

curl http://pastie.org/pastes/2427953 -L -s -o ~/fixlogin.sh

จากนั้นตรวจสอบไฟล์เพื่อให้แน่ใจว่าเป็นสิ่งที่คุณต้องการให้มี:

cat ~/fixlogin.sh

หากไฟล์ตรงกับเนื้อหาของสคริปต์ด้านล่างคุณสามารถใช้ไฟล์ดังต่อไปนี้:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

หมายเหตุ: ถ้าคุณต้องการสร้างไฟล์ของคุณเองและไม่ใช้ curl เพื่อดาวน์โหลดสคริปต์ "fixlogin.sh" จากโฮสต์ระยะไกลที่เรียกว่า pastie ไฟล์นี้เป็นไฟล์นี้คุณสามารถวางต่อไปนี้ลงในเอกสารที่เรียกว่า 'loginfix.sh' ให้ใช้งานได้ด้วย chmod + x และรันสคริปต์ด้วยตนเอง:

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

อย่างที่คุณเห็นสคริปต์จะลบทุกอย่างภายใน User ~ / Library / Preferences / ByHost / ตรงกับ "com.apple.loginwindow." *

(ข้อความข้างต้นมีขนาดเล็กโดยเจตนาเพื่อให้พอดีกับบรรทัดเดียว)

จากนั้นให้รันคำสั่งต่อไปนี้:

chmod +x ~/fixlogin.sh && sudo ~/fixlogin.sh ; rm ~/fixlogin.sh

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

#!/bin/bash
echo "#!/bin/bash" > /tmp/loginfix.sh
echo "rm /Users/*/Library/Preferences/ByHost/com.apple.loginwindow.*" >> /tmp/loginfix.sh
mv /tmp/loginfix.sh /usr/bin/loginfix.sh
chmod +x /usr/bin/loginfix.sh
defaults write com.apple.loginwindow LoginHook /usr/bin/loginfix.sh

ถ้าคุณต้องการเปลี่ยนกลับไปใช้ลักษณะการทำงานเริ่มต้นของคุณลักษณะ Lion OS X นี้ให้พิมพ์คำสั่งเขียนค่าเริ่มต้นต่อไปนี้:

sudo defaults delete com.apple.loginwindow LoginHook

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

สคริปต์เล็ก ๆ น้อย ๆ นี้มาจาก HexBrain ขอขอบคุณที่ส่งข้อความนี้ถึง Mark!