只要我的计算机不进入睡眠状态,我的 launchd 配置中指定的脚本就可以正常工作(每 10 秒运行一次)。一旦进入睡眠状态,我必须重新加载 launchd 配置。这是我的配置:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.maxwell.break</string>
<key>KeepAlive</key>
<true/>
<key>StartInterval</key>
<integer>10</integer>
<key>Program</key>
<string>/usr/bin/osascript</string>
<key>ProgramArguments</key>
<array>
<string>osascript</string>
<string>/Users/maxwell/Google Drive/Dev/Launchd/break.scpt</string>
</array>
</dict>
</plist>
我以为KeepAlive
密钥可以解决这个问题,但事实并非如此。它运行的 Applescript 只执行以下操作:
display dialog "Break"
delay 10