J'essaie de programmer l'exécution d'un AppleScript à 60 secondes d'intervalle qui exécute deux scripts shell et je semble avoir configuré correctement ma plist pour que deux fichiers soient produits (StandardErrorPath et StandardOutPath) après 60 secondes, mais je ne vois pas les résultats de mes scripts shell apparaître comme ils le faisaient lorsque j'exécutais le scripts dans scripts Editor. Pour moi, cela signifie que la section ProgramArguments ne charge pas mon AppleScript. Quelqu'un peut-il m'indiquer la bonne direction ? Dois-je ajouter un type de journalisation à mon AppleScript pour qu'il soit enregistré dans le fichier d'erreur de ma plist ?
Fichier AppleScript (Shell script fonctionne correctement dans script Editor et Terminal) :
do shell script "cd /Users/user/Desktop/Projects/node/webmasters-cli && /Users/user/.nvm/versions/node/v4.3.2/bin/node app.js DesktopUSA"
do shell script "cd /Users/user/Desktop/Projects/node/webmasters-cli && /Users/user/.nvm/versions/node/v4.3.2/bin/node app.js DesktopAll"
plist (Situé dans /Users/user/Library/LaunchAgents)
<?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.user.webmasters.daily.pull</string>
<key>KeepAlive</key>
<false/>
<key>RunAtLoad</key>
<false/>
<key>ProgramArguments</key>
<array>
<string>/Users/user/Desktop/Projects/node/webmasters-cli/daily-api-call.scpt</string>
</array>
<key>StartInterval</key>
<integer>60</integer>
<key>StandardErrorPath</key>
<string>/tmp/webmastersDailyTest.err</string>
<key>StandardOutPath</key>
<string>/tmp/webmastersDailyTest.out</string>
</dict>
</plist>
Etapes à charger dans launchctl :
1) Changement de répertoire
2) a couru launchctl load com.user.webmasters.daily.pull.plist
3) Vérifié auprès de launchctl list
. plist est apparu.
4) Vérifié /tmp
et les fichiers StandardErrorPath et StandardOutPath sont créés après 60 secondes. Aucune valeur dans les fichiers, comme prévu.