1 回答
TA贡献1784条经验 获得超2个赞
我想到了。
所以首先,二进制文件正在运行。它开始时未启用在启动时运行。要初始化,您cp需要plist进入~/Library/LaunchAgents/目录:
cp daemon.plist ~/Library/LaunchAgents/daemon.plist
看起来plist像这样:
<?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>daemon</string>
<key>ProgramArguments</key>
<array>
<string>/Applications/Daemon.app/Contents/MacOS/daemon</string>
</array>
<key>ProcessType</key>
<string>Interactive</string>
<key>RunAtLoad</key>
<false/>
<key>KeepAlive</key>
<false/>
</dict>
</plist>
注意:RunAtLoad键设置为false。
然后我们将其加载到launchctl:
launchctl load -w ~/Library/LaunchAgents/daemon.plist
它不应加载,因为RunAtLoad设置为false.
然后,我们可以像这样在启动时启用和禁用运行:
启用:
设为
RunAtLoad
_true
cp
结束plist
_
禁用:
设为
RunAtLoad
_false
cp
结束plist
_
有点hacky,但它有效。
- 1 回答
- 0 关注
- 154 浏览
添加回答
举报