Spuštění shell skriptu v určitou dobu
K naplánování spuštění shell skriptu v určitou dobu můžete použít launchd
nebo cron
.
Plánování úloh pomocí nástroje launchd
K plánování úloh slouží nástroj
launchd
, nikolicron
. Pokud je při použití nástrojelaunchd
vynechána úloha, protože je počítač vypnutý nebo v režimu spánku, tato úloha bude přidána do fronty, jakmile bude počítač znovu spuštěn.Chcete-li použít nástroj
launchd
k plánování úloh s časovačem, použijte klíčStartCalendarInterval
neboStartInterval
.Další informace o nástroji
launchd
najdete na příslušné manuálové stránce.
Použití démona cron k naplánování úlohy
Démon cron
spustí naplánované příkazy definované v souborech crontab. Démon cron
vyhledá ve složce /usr/lib/cron/tabs/ soubory crontab s názvy podle účtů na cestě /etc/passwd a poté tyto soubory načte do paměti. Démon cron
také vyhledá ve složce /etc/crontab/ soubory crontab, které jsou v jiném formátu. Démon cron
se aktivuje každou minutu a kontroluje každý příkaz v uložených souborech crontab, aby ověřil, zda není třeba je v aktuální minutě spustit.
Když se příkazy spustí, výstup je odeslán e-mailem vlastníkovi souboru crontab nebo uživateli uvedenému ve volitelné proměnné prostředí MAILTO v souboru crontab.
Nástroj crontab
můžete používat k instalaci, odinstalaci nebo vypsání tabulek používaných na podporu procesu démona cron
. Uživatelé mohou mít svůj vlastní soubor crontab.
Ke konfiguraci svého souboru crontab použijte příkaz
crontab -e
. Tento příkaz otevře prázdný soubor crontab v režimu úprav.Příklad souboru crontab:
SHELL=/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#min hour mday month wday command
30 18 * * 1-5 diskutil repairPermissions /Volumes/MacHD
50 23 * * 0 diskutil repairVolume /Volumes/MacHD
V tomto příkladu opraví první položka oprávnění pro disk pro svazek MacHD v 18:30 každý den, od pondělí do pátku:
30 18 * * 1-5 diskutil repairPermissions /Volumes/MacHD
Druhá položka naplánuje spuštění opravy svazku každou neděli ve 23:50:
50 23 * * 0 diskutil repairVolume /Volumes/MacHD