J'ai joué avec AppleScript et Automator pour faire fonctionner cette chose, mais je ne peux pas sembler envelopper la tête. Si quelqu'un pouvait me montrer un exemple ou me donner quelques conseils sur la façon de configurer une application pour qu'elle se ferme à une heure précise, puis de mettre l'ordinateur en veille ou à l'arrêt, ce serait grandement apprécié.
applescript
sleep-wake
script
applications
Tomás Richardson
la source
la source
at
n'est pas ce que vous voulez.cron
oulaunchd
. Si vous voulez une interface plus facile à configurer, peut-être que lingon 3 vous aidera.Réponses:
Je suppose que vous souhaitez lancer cette procédure plutôt que de l'exécuter à une heure régulièrement planifiée.
Mon approche serait d'initier cela à partir de la ligne de commande, mais toutes les commandes peuvent être exécutées dans un composant de script shell d'un script Automator avec quelques modifications. L'approche suivante combine quelques composants pour faire le travail:
tell
commande pour quitter l'application1. Dire à l'application de quitter
Cela peut être aussi simple que:
2. Mettre l'ordinateur en veille
Jetez un oeil à
pmset
pour plus de détails, mais l'exécution de la commande suivante mettra votre ordinateur en veille:3. Planification d'une opération à exécuter à un moment précis
Jetez un œil à la commande at . Cette commande vous donne la possibilité de spécifier une heure pour l'exécution d'une commande. Vous devrez activer cette fonctionnalité car elle ne l'est pas par défaut. Pour activer le
atrun
démon, exécutez la commande suivante [référence sur SU] :Une fois que vous avez activé
atrun
, toute commande peut être planifiée à une heure spécifique en émettantqui fonctionne car
at
prend son entréestdin
par défaut. Une approche plus simple consiste à exécuter les commandes répertoriées dans un fichier. Un fichier peut être exécuté en utilisant l'-f
indicateur, suivi du nom du script à exécuter comme ceci:Mettre tous ensemble
Ce qui suit suppose que cette option
atrun
est activée. À titre d'exemple de jouet, disons que je veux quitter Mail et mettre l'ordinateur en veille à 23 heures. Je créerais un fichier contenant les commandes que je veux exécuter comme suit:Enregistrez ce fichier dans
quit-and-sleep
, puis exécutez-le sur la ligne de commandeAvertissements
Je n'ai fait aucune vérification pour m'assurer que Mail était bien fermé. Le script suppose également que rien d'autre n'empêchera l'ordinateur de s'endormir. Je l'ai gardé simple ici comme point de départ pour ce que vous voulez.
la source
Voici une version strictement applescript qui accomplit cela étant donné une valeur de temps codée en dur. Vous pouvez bien sûr rendre cette partie interactive si vous le souhaitez. De plus, cette version suppose que la chaîne temporelle se rapporte à aujourd'hui.
la source
Vous pouvez planifier un événement une fois avec à:
Ou pour planifier sa répétition tous les jours, modifiez le crontab avec
EDITOR=nano crontab -e
et ajoutez une entrée comme celle-ci:la source
Voici du code qui attendra quelques secondes avant de quitter l'application actuelle et de se mettre en veille.
la source