[[macOS]] 计划任务管理。
命令
launchctl list
:列出78311 0 com.immwind
78311
:进程号(- 表示未运行)0
:成功退出com.immwind
:任务名
launchctl stop <plist>
:停止launchctl start <plist>
:启动(启动前需先加载)launchctl restart <plist>
:重启launchctl load <plist>
:加载launchctl unload <plist>
:卸载指定任务(内容变更后需先卸载)
保存位置
~/Library/LaunchAgents
:用户自定义的任务(用户登录后才执行)/Library/LaunchAgents
:管理员定义的任务/Library/LaunchDaemons
:管理员定义的守护进程任务(系统启动即执行)/System/Library/LaunchAgents
:系统定义的任务/System/Library/LaunchDaemons
:系统定义的守护进程任务
执行周期
StartCalendarInterval
指定时间执行
<key>StartCalendarInterval</key><dict> <key>Minute</key> # 分钟 <integer>30</integer> <key>Hour</key> # 小时 <integer>9</integer> <key>Weekday</key> # 周几(周日 0 或 7) <integer>9</integer> <key>Month</key> # 月 <integer>9</integer></dict>
StartInterval
:间隔时间执行
# 间隔一小时执行<key>StartInterval</key> <integer>3600</integer>
说明
<?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>com.irs</string> <key>KeepAlive</key> # 意外挂掉是否重启 <false/> <key>RunAtLoad</key> <true/> <key>RunAtLoad</key> <true/> <key>ProgramArguments</key> # 要执行的脚本 <array> <string>/Users/immwind/Dropbox/scripts/irs_sync.sh</string> </array> <key>StartInterval</key> <integer>360</integer> </dict> </plist>