J'ai toujours été un adepte de la crontab. Récemment, j'ai décidé de passer aux processus launchd d'Apple, et je n'arrive pas à faire fonctionner ma première plist.
-
En
plutil -lint
m'indique que la plist est correctement formatée. En fait, elle affiche "OK". -
J'ai exécuté manuellement le script bash script et confirmé qu'il fonctionne correctement lorsqu'il est lancé manuellement.
-
J'ai chargé le fichier à l'aide de launchctl load et j'ai reçu la réponse "déjà chargé" lors de mes tentatives répétées.
Le problème doit se situer au niveau de la définition de ma liste de diffusion. Merci de m'aider à trouver l'erreur.
Je m'attends à ce qu'il fonctionne dans les conditions suivantes :
- Uniquement lorsque l'utilisateur
jaredclemence
utilise le système - Une fois dès l'ouverture de la session
- Toutes les 15 minutes ensuite
- Modifier le répertoire en
/Library/WebServer/Documents/medface/
avant d'exécuter le script.
Le fichier plist est le suivant :
<?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>org.pediatricheartcenter.medface.crons</string>
<key>User</key>
<string>jaredclemence</string>
<key>ProgramArguments</key>
<array>
<string>/User/jaredclemence/runMedfaceSchedTasks.batch</string>
</array>
<key>WorkingDirectory</key>
<string>/Library/WebServer/Documents/medface</string>
<key>StartInterval</key>
<integer>900</integer>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Notes :
- J'ai stocké le fichier dans
~/Library/LaunchAgents/org.pediatricheartcenter.medface.crons.plist
- Une version précédente du fichier utilisait
Program
au lieu deProgramArguments
avec un<string>
au lieu d'un tableau.