0 votes

OS X : Programmer Launchctl pour quitter l'application à une heure donnée

J'ai créé cette launchctl .plist pour ouvrir une application à une heure précise tous les jours - ou la prochaine fois que l'ordinateur se réveille du sommeil .

<?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>caffeine-timecontrol.job</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Applications/Caffeine.app/Contents/MacOS/Caffeine</string>
    </array>
    <key>StartCalendarInterval</key>
        <dict>
            <key>Minute</key><integer>40</integer>
            <key>Hour</key><integer>7</integer>
            <key>WeekDay</key><integer>1234567</integer>
        </dict>
</dict>
</plist>

Ce qui précède est censé réveiller l'application Caffeine à l'adresse 7:40 AM Every day .

Cependant, puis-je également inclure une clause pour que l'application prenne fin à la date suivante 00:00 AM Every day si l'ordinateur est éveillé ?

Ce qui veut dire, qu'il y a un opposé à StartCalendarInterval ou dois-je m'y prendre d'une autre manière, par exemple par le biais de crontab ?

1voto

Greg Points 1425

L'une de ces deux méthodes devrait fonctionner, mais j'avoue ne pas les avoir testées :

  1. Soit vous pouvez écrire un AppleScript à la

tell application "Caffeine" to quit

mettre cela dans un fichier, puis soit lancer le fichier à partir d'une osascript ou le mettre dans l'éditeur script et le sauvegarder comme une application et le lancer comme une application.

  1. ou vous pouvez utiliser la bonne vieille commande killall. Vous devrez rechercher le nom du processus de Caffeine et lui envoyer un message de type

    killall Caffeine

en supposant que le nom du processus de l'application Caffeine est Caffeine (vérifiez-le à partir du moniteur d'activité ou de la commande ps).

0 votes

Merci pour votre réponse. Je pense que la première méthode fonctionnera très bien, grâce à laquelle launchctl exécute un AppleScript via osascript .

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X