Executar un script de l’intèrpret d’ordres en hores determinades
Per programar l’execució d’un script de l’intèrpret d’ordres en hores determinades, utilitza launchd
o cron
.
Programar tasques amb launchd
Fes servir
launchd
en lloc decron
per programar tasques. Amblaunchd
, si una tasca s’omet perquè l’ordinador està apagat o en repòs, la tasca s’afegirà a la cua quan l’ordinador torni a estar activat.Per utilitzar
launchd
per programar tasques amb temporitzador, fes servir la clauStartCalendarInterval
oStartInterval
.Per obtenir més informació sobre
launchd
, consulta’n la pàgina man.
Utilitzar cron per programar una tasca
El dimoni cron
executa ordres programades definides en arxius crontab. El dimoni cron
busca a la carpeta /usr/lib/cron/tabs/ arxius crontab amb un nom derivat dels comptes a /etc/passwd i després carrega els arxius a la memòria. El dimoni cron
també busca a la carpeta /etc/crontab/ arxius crontab, que tenen un format diferent. Aleshores, cron
efectua cicles cada minut per examinar els arxius crontab desats i comprovar cada ordre per determinar si s’hauria d’estar executant en el minut en curs.
Quan s’executen les ordres, la sortida s’envia per correu electrònic al propietari de l’arxiu crontab o a l’usuari indicat a la variable d’entorn MAILTO opcional de l’arxiu crontab.
crontab
es fa servir per instal·lar, desinstal·lar o veure les taules utilitzades per aplicar el dimoni cron
. Els usuaris poden tenir el seu propi arxiu crontab.
Per configurar el teu arxiu crontab, utilitza l’ordre
crontab -e
. Aquesta ordre obre un arxiu crontab buit en mode d’edició.A continuació tens un exemple d’un arxiu 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
En aquest exemple, la primera entrada repara els permisos de disc del volum MacHD a les 18:30 h cada dia de dilluns a divendres:
30 18 * * 1-5 diskutil repairPermissions /Volumes/MacHD
La segona entrada programa una operació de reparació del volum que s’executarà cada diumenge a les 23:50 h:
50 23 * * 0 diskutil repairVolume /Volumes/MacHD