我正在阅读launchctl手册页,并对它的功能有一些疑问:
- 加载与启动,卸载与停止之间有什么区别?
- 我在哪里找到守护程序的作业标签,它在plist文件中?
我正在阅读launchctl手册页,并对它的功能有一些疑问:
Answers:
launchctl load -w
和launchctl unload -w
。start
和stop
通常被保留用于测试和调试工作。launchctl start <label>
:开始工作。通常仅将其保留用于测试或调试特定作业。launchctl stop <label>
:停止工作。与启动相反,如果将作业配置为保持运行,则作业可能会立即重新启动。launchctl remove <label>
:从中删除作业launchd
,但异步进行。在返回之前,它不会等待作业实际停止,因此不会对此作业进行任何错误处理。launchctl load <path>
:只要未“禁用”作业,就加载并开始作业。launchctl unload <path>
:停止并卸载作业。该作业仍将在下次登录/重新启动时重新启动。launchctl load -w <path>
:加载并启动作业,同时还将作业标记为“未禁用”。作业将在下次登录/重新启动时重新启动。launchctl unload -w <path>
:停止并卸载并禁用作业。该作业将不会在下次登录/重新启动时重新启动。我在哪里找到守护程序的作业标签,它在plist文件中?
是的,它在plist文件中,通常与plist文件的文件名匹配。
加载和卸载告诉启动要加载的配置文件。它是否运行程序以及在什么条件下由plist文件确定。当前未运行的作业可以从开始launchctl start ...
和停止launchctl stop ...
。
作业的标签由标签键定义,plist的名称也应为作业标签,后跟plist扩展名。