一、在Mac 上的“终端”中使用 launchd 管理脚本
1、 macOS使用 launchd进程来管理守护进程和代理,而您还可以用它来运行 shell脚本。您不与 launchd直接交互,而是使用 launchctl命令来载入或卸载 launchd守护进程和代理。
2、在系统启动期间, launchd是内核在设置电脑时首先运行的进程。若您想要 shell脚本作为守护进程运行,应由 launchd来启动它。其他用于启动守护进程和代理的机制可能会被 Apple酌情移除。
3、您可以通过在以下文件夹中查看配置文件来了解由 launchd管理的各种守护进程和代理:
4、/系统/资源库/LaunchDaemons Apple提供的系统守护进程
5、/系统/资源库/LaunchAgents Apple提供的基于每个用户且所有用户适用的代理
6、/资源库/LaunchDaemons第三方系统守护进程
7、/资源库/LaunchAgents基于每个用户且所有用户适用的第三方代理
8、~/资源库/LaunchAgents仅适用于登录用户的第三方代理
9、另请参阅关于 Mac上“终端”中的 shell脚本 Apple支持文章:在 Mac上将 zsh用作默认 Shell Daemons and Services Programming Guide launchd.plist man页面
二、mac日志问题
1、mac/var/log/var/logs记录着苹果电脑的各种日志,远程、登陆、重启、关机、定时任务等等
2、一次偶然的机会看到/var/log/system.log里面有已经卸载过的软件的日志记录,
3、这个软件早都删除过了( com.oray.sunlogin.service向日葵远程控制的日志)
4、去网上一搜,发现是Mac上的定时任务在作怪,即launchctl。
5、 launchctl将根据plist文件的信息来启动任务。plist脚本一般存放在以下目录:
6、/Library/LaunchDaemons-->只要系统启动了,哪怕用户不登陆系统也会被执行
7、/Library/LaunchAgents-->当用户登陆系统后才会被执行
8、删除上述两个目录下指定的任务,重启电脑后问题解决.
9、 Mac中的定时任务利器:launchctl
launchctl和launchctl unload的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!