Відповіді:
В основному, ви можете зберегти такий список властивостей, як цей ~/Libary/LaunchAgents/com.superuser.408777.plist
, і завантажити його за допомогою launchctl load ~/Libary/LaunchAgents/com.superuser.408777.plist
або вийти з системи та назад.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN
http://www.apple.com/DTDs/PropertyList-1.0.dtd >
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.superuser.408777</string>
<key>ProgramArguments</key>
<array>
<string>curl</string>
<string>--data</string>
<string>par1=a&par2=b&press=OK</string>
<string>http://mydomain.com/file.php</string>
</array>
<!-- <key>Program</key>
<string>/absolute/path/to/script</string> -->
<key>StartCalendarInterval</key>
<dict>
<key>Weekday</key>
<integer>1</integer>
<key>Hour</key>
<integer>8</integer>
</dict>
<dict>
<key>Weekday</key>
<integer>1</integer>
<key>Day</key>
<integer>9</integer>
</dict>
<!-- <key>StartInterval</key>
<integer>3600</integer> --> this would just run the program arguments every hour
<key>KeepAlive</key>
<true/>
</dict>
</plist>
Наскільки мені відомо, неможливо вказати діапазони дат, наприклад, 8-18 годин та 1-5 днів, крім перерахування кожної комбінації окремо. Ви можете запускати зовнішній скрипт щогодини та виходити з нього залежно від дати.
weekday=$(date +%w)
hour=$(date +%H)
[[ $weekday -le 0 || $weekday -ge 6 || $hour -le 7 || $hour -ge 19 ]] && exit
curl -s --data "par1=a&par2=b&press=OK" http://mydomain.com/file.php /dev/null