ป้องกัน System Sleep ขณะที่กระบวนการหรือคำสั่งทำงานใน Mac OS X
ผู้ใช้ Mac จำนวนมากใช้ยูทิลิตี้เพื่อป้องกันไม่ให้คอมพิวเตอร์เข้าสู่โหมดสลีปชั่วคราว โดยมักจะอาศัยมุมสลีป เครื่องมือของบุคคลที่สามที่เรียกว่า Caffeine, pmset หรือล่าสุดคือยูทิลิตี้บรรทัดคำสั่งที่รวมมากับ OS X ที่เรียกว่า caffeinate ตามค่าเริ่มต้น รายการแถบเมนูคาเฟอีนและคำสั่งคาเฟอีนทั้งสองจะป้องกันการสลีปตราบเท่าที่มีการเปิดใช้งานแยกกัน ซึ่งมีประโยชน์มากสำหรับผู้ใช้เดสก์ท็อปในขณะที่ใช้ Mac แต่ไม่มีประโยชน์อย่างยิ่งหากคุณต้องการให้ OS X สลีปทำงาน ขึ้นอยู่กับความสำเร็จของกระบวนการหรืองานเฉพาะ
นั่นคือสิ่งที่เรากำลังจะพูดถึงโดยใช้บรรทัดคำสั่ง ซึ่งมีการป้องกันโหมดสลีปที่ขึ้นกับกระบวนการ ซึ่งจะบล็อกเฉพาะฟังก์ชันสลีปของ Mac ขณะที่คำสั่ง งาน หรือกระบวนการที่ระบุกำลังทำงานหรือ เมื่อทำงานเสร็จ คอมพิวเตอร์จะคืนค่านิสัยการนอนแบบเดิม
เพื่อให้บรรลุคำสั่งเลี่ยงการนอนหลับโดยเฉพาะ เราจะใช้รูปแบบของคำสั่งคาเฟอีนซึ่งสามารถป้องกันการนอนหลับได้หลายวิธี เราจะดูตัวอย่างบางส่วน แต่หน้าคู่มือของคาเฟอีนมีตัวเลือกเพิ่มเติมเล็กน้อยซึ่งอาจเป็นที่ต้องการสำหรับสถานการณ์อื่นๆ ด้วย
สำหรับจุดประสงค์ของเราที่นี่เพื่อให้การป้องกันการนอนหลับขึ้นอยู่กับความสมบูรณ์ของคำสั่งหรือกระบวนการเฉพาะ คุณจะใช้แฟล็ก -i เช่น:
คาเฟอีน -i
อาจชัดเจนอยู่แล้ว แต่การดำเนินการคำสั่งคาเฟอีนเช่นนี้จะเป็นการเริ่มคำสั่งหรือกระบวนการที่ระบุในอาร์กิวเมนต์ด้วย
ตัวอย่างเช่น หากคุณต้องการให้ Mac หลีกเลี่ยงการพักเครื่องเมื่อคำสั่ง "make" ทำงานอยู่ คุณจะต้องใช้ไวยากรณ์คำสั่งต่อไปนี้:
คาเฟอีน -ฉันทำ
หรือบางทีคุณอาจต้องการป้องกันไม่ให้เข้าสู่โหมดสลีปในขณะที่มีการเชื่อมต่อ ssh กับเซิร์ฟเวอร์เฉพาะ และคุณต้องการส่งคำสั่ง caffeinate ไปที่พื้นหลัง จากนั้นจึงใช้เครื่องหมายแอมเปอร์แซนด์ต่อท้ายเป็น เหมือนกันเลย:
คาเฟอีน -i ssh coffeebeans &
คุณสามารถเรียกใช้สิ่งนี้ด้วยสคริปต์หรือคำสั่งของคุณเองที่ตำแหน่งอื่น:
คาเฟอีน -i /private/tmp/./whatisthis.sh
หรือหากต้องการเปิดใช้งานการป้องกันการนอนหลับตราบเท่าที่เว็บเบราว์เซอร์ Safari ทำงานใน GUI คุณจะต้องใช้ไวยากรณ์ต่อไปนี้ โปรดทราบว่าคุณต้องระบุเส้นทางแบบเต็มไปยังไบนารีภายในไฟล์ .app :
caffeinate -i /Applications/Safari.app/Resources/MacOS/Safari
แฟล็ก -i ป้องกันการสลีปของระบบ แต่คุณสามารถใช้แฟล็กอื่นเพื่อสร้างการยืนยันเพื่อป้องกันดิสก์หรือดิสเพลย์สลีปได้เช่นกัน เพื่อป้องกันไม่ให้หน้าจอสลีป (นั่นคือหน้าจอปิดและเข้าสู่โหมดล็อกหรือโปรแกรมรักษาหน้าจอ) จำเป็นต้องใช้แฟล็ก -d:
คาเฟอีน -d
เช่นเดียวกับแฟล็ก -i สิ่งนี้สามารถนำไปใช้กับงานระบบใด ๆ ไม่ว่าจะเรียกใช้จากบรรทัดคำสั่งหรือ GUI เพียงให้แน่ใจว่าได้ระบุชื่อที่ถูกต้องพร้อมตัวพิมพ์เล็กและใหญ่ที่เหมาะสม ตัวอย่างอื่น:
caffeinate -d telnet towel.blinkenlights.nl
คำสั่งนั้นหมายความว่า ตราบใดที่ telnet ไปยังภาพยนตร์ Star Wars ASCII ทำงานอยู่ จอแสดงผลของ Mac จะไม่เข้าสู่โหมดสลีป หากเทลเน็ตถูกปิดหรือเล่น Star Wars เสร็จแล้ว ระบบอาจเข้าสู่โหมดสลีปตามที่ได้รับอนุญาต ซึ่งกำหนดโดยการตั้งค่าโหมดสลีปและพลังงานใน OS X
แน่นอน เนื่องจากคาเฟอีนมีพื้นฐานมาจากบรรทัดคำสั่งทั้งหมด จึงไม่สามารถใช้กับผู้ใช้ทุกคนได้ แต่สำหรับผู้ที่ใช้เวลาส่วนใหญ่ในเทอร์มินัล อาจเป็นกลอุบายที่ดี สำหรับผู้ใช้ Mac ที่คุ้นเคยกับส่วนติดต่อผู้ใช้แบบกราฟิกมากขึ้น มุมป้องกันการนอนหลับที่มีประสิทธิภาพและการใช้แอป Caffeine ยังคงเป็นทางออกที่ดีที่สุดในการทำงานที่คล้ายกัน
หากคุณต้องการทำงานที่ขึ้นกับกระบวนการที่คล้ายกัน แต่หลีกเลี่ยงเทอร์มินัลและบรรทัดคำสั่ง แอป Wimoweh จะทำสิ่งเดียวกันกับแถบเมนูแบบเลื่อนลง แม้ว่าจะเป็นแอปแบบชำระเงินซึ่งอาจ ทำให้ไม่เป็นที่ต้องการสำหรับผู้ใช้บางราย และไม่ได้เสนออาร์กิวเมนต์การเสร็จสิ้นภารกิจตามกระบวนการทั่วไปหรือบรรทัดคำสั่ง ดังนั้น คาเฟอีนที่มีแฟล็กที่เหมาะสมจึงยังคงเป็นที่ต้องการของคนจำนวนมาก