本文介绍如何使用launchctl定时执行脚本任务以及错误定位。
我的macbook是arm64架构,在执行launchctl遇到start失败的问题,花了几天时间才解决。在此记录一下,供参考。
一、创建plist文件
要创建的plist文件的父目录可以是:
- /System/Library/LaunchAgents/
- /System/Library/LaunchDaemons/
- /Library/LaunchAgents/
- /Library/LaunchDaemons/
- ~/Library/LaunchAgents/
- ~/Library/LaunchDaemons/
其中1、2是系统级别的,3、4是全局级别的,5、6是用户级别。Daemon是守护进程。使用5即可满足我的定时需求。文件内容如下:
➜ cat ~/Library/LaunchAgents/service.plist
<!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>your_service_name</string>
<key>ProgramArguments</key>
<array>
<string>/bin/bash&l