launchctl unload是异步操作,会等待执行完成再返回 launchctl stop是同步操作 shell下面捕获launchctl unload和stop信号,这两个操作都是发送SIGTERM信号给关联的进程,在shell下面可以通过来捕获信号执行自己的异常处理
trap "echo 'Hello World';exit " TERM
如果超过一定时间发送SIGTERM之后程序没有自己退出,则会发送SIGKILL强制杀死进程
launchctl kickstart -k system/mac.xxxx
launchctl bootout system/mac.xxx
launchctl disable system/mac.xxx
访问被禁用之后,直接unload是无法启动,需要使用unload -w参数,可以用于禁用某些服务 或者
launchctl unload -w /path/xxx.plist
launchctl load -w /path/xxx.plist
load必须需要有具体的plist路径文件
有时候看到一个服务加载了,但是不知道从哪个plist加载,可以使用下面的命令
launchctl print system/mac.xxx
###被禁用的服务
/var/db/com.apple.xpc.launchd/disabled.plist
launchctl print system
评论
暂无评论~~