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


13

ฉันมี Mac ของฉันให้ตื่นขึ้นมาในตอนกลางคืนและเรียกใช้ rsync เพื่อสำรองข้อมูล สิ่งนี้ถูกกำหนดค่าผ่านตัวประหยัดพลังงาน> กำหนดเวลา

อย่างไรก็ตามดูเหมือนว่ามันจะกลับไปนอนก่อนที่จะสามารถทำอะไรได้ดังนั้นฉันต้องหยุดการทำงานระหว่างการดำเนินการของสคริปต์ทุบตีที่ rsync ทำงาน

ฉันคิดว่าวิธีที่ดีที่สุด (ถ้าเป็นไปได้) คือการออกคำสั่งให้ตั้งเวลาพักเป็น "ไม่เคย" หรือหมดเวลานานมากก่อนที่จะ rsyncs แล้วกลับสู่ปกติเมื่อมันเสร็จสมบูรณ์ มีวิธีแก้ปัญหาที่ดีกว่าสำหรับการทำสิ่งนี้หรือไม่?


ควรจะอยู่ใน superuser?
Kimvais

คำตอบ:


18

Caffeinate

ตัวอย่างเช่น:

caffeinate -i rsync -avz someuser@somehost:somefolder /some/local/folder

จากหน้าคน:

EXAMPLE
     caffeinate -i make
        caffeinate forks a process, execs "make" in it, and holds an
        assertion that prevents idle sleep as long as that process
        is running.

ดูman caffeinateรายละเอียดที่


11

Mac OS X 10.8 (Mountain Lion) และใหม่กว่า

ใช้caffeinateคำสั่ง ดูคำตอบของ Nathan Longหรือman caffeinateสำหรับรายละเอียด

Mac OS X 10.7 (Lion) และรุ่นก่อนหน้า

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

# launch process to prevent sleep and move it to the background
pmset noidle &
# save the process ID
PMSETPID=$!

... do stuff here ...
... don't fall asleep ...
... watch out for that tree!
... ok we're free and clear now ...

# kill pmset so the computer can sleep if it wants to
kill $PMSETPID

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


2
pmset noidleเลิกใช้แล้ว: หน้าคนบอกว่า: This argument is deprecated in favor of caffeinate(8). ดูคำตอบของฉัน
Nathan Long

4

ลอง

man pmset

:-)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.