我在 iMac 上运行存档实用程序来提取数千个文件,因此需要很长时间。我还将在一个名为 R Studio 的程序中运行一个进程,该进程可能需要几天才能完成。我需要找到一种方法来防止系统进入睡眠状态并暂停这些进程。
我相信终端中的咖啡因命令是解决方案,但我无法让它按照我想要的方式工作。
我阅读了 Caffeinate 手册页并尝试了一下,caffeinate -w [PID]
只要显示器打开,它似乎就可以工作。一旦显示器关闭,系统就会暂停该过程并进入睡眠状态。
我也想过尝试一下caffeinate -s [utility]
,但是根据这个网页:http://osxdaily.com/2014/06/16/caffeinate-prevent-sleep-while-command-active-mac-os-x/我需要在 .app 文件中指定实用程序二进制文件的完整路径,但我不确定 Archive Utility 中的提取过程或我将在 R Studio 中运行的过程的路径是什么。使用 PID(一旦进程启动,我就可以在活动监视器中找到它)似乎更可靠。
我已阅读有关超级用户的相关问答:关闭显示屏后仍让 Mac 保持运行但是,我正在寻找比建议更有针对性的解决方案:caffeinate -s
。我的理解是 -s 会阻止系统休眠直到 caffeinate 退出。我真的很想要一个解决方案,允许 caffeinate 在进程完成后自动退出。
而且我也很好奇为什么当显示器关闭时 caffeinate -w 断言会停止工作。
新问题:我的进程运行完毕,但咖啡因似乎没有按预期退出。我遗漏了什么?除了退出终端外,如何终止咖啡因?我试过了,exit caffeinate
但似乎没有任何效果。
谢谢!
答案1
你试过了吗
caffeinate -d -w [PID]
?这可能有效:-d 创建一个断言以防止显示器进入睡眠状态。