【问题标题】:prevent OS X sleep whilst running specific launchd plist在运行特定的启动 plist 时防止 OS X 睡眠
【发布时间】:2015-06-23 20:44:45
【问题描述】:

我有一个定期运行备份脚本的全局启动 plist 文件。该脚本是一个非常简单的 bash 脚本,它设置了一些变量并调用 duply。但是 plist 似乎并没有阻止系统进入睡眠模式。

当这个特定的启动 plist 和相关脚本正在运行时,有没有办法防止 mac 进入睡眠模式?

【问题讨论】:

    标签: macos backup launchd


    【解决方案1】:

    似乎有效的解决方案是

    caffeinate -s [utility]

    这会强制系统保持唤醒状态,直到 [utility] 关闭。

    -s 创建一个断言以防止系统休眠。此断言仅在系统系统 tem 使用交流电源运行。

    完整的手册页解释更多。

    https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man8/caffeinate.8.html

    【讨论】:

      【解决方案2】:

      我使用以下方法来防止我的 Mac 休眠:

      pmset noidle
      

      然后我使用 Ctrl-C 杀死它并让它再次休眠。

      【讨论】:

      • 所以我说我可以将pmset noidle 放在我的bash 脚本的开头,然后将pmset idle 放在最后,这样应该可以吗?
      • 抱歉,我目前无法检查,但pmset noidle 至少应该在开始时工作以防止睡眠 - 检查联机帮助页并尝试一下。
      • 您可能需要在后台启动它并保留其进程 ID,然后在您愿意允许睡眠时终止它。
      • @juliushibert 还有较新的caffeinatecommand
      • @null 顶级建议!把它作为答案,让我投票。
      猜你喜欢
      • 1970-01-01
      • 2012-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多