launchd
(réf) est la méthode préférée pour planifier des événements dans OS X, plutôt que d'utiliser cron
.
Voici une méthode pour mettre un ordinateur OS X en veille à un horaire spécifié en utilisant les outils intégrés dans OS X sans afficher l'alerte de confirmation. Pour réveiller l'ordinateur, vous pouvez toujours le faire via Préférences Système Économiseur d'énergie Planning.
Créez d'abord le script shell suivant dans /usr/local/bin
nommé sleepnow.sh
:
#!/bin/sh
pmset sleepnow
Ensuite, créez un fichier plist launchd
pour planifier l'exécution d'un script quotidien. Il ressemblerait à ceci :
Label
org.myschoolname.sleep
ProgramArguments
/bin/sh
/usr/local/bin/sleepnow.sh
StartCalendarInterval
Hour
14
Minute
00
Vous voudriez probablement placer ceci dans /System/Library/LaunchDaemons/
avec le nom de fichier org.myschoolname.sleep.plist
. Ajustez l'heure et le nom selon vos besoins.
Vous pouvez charger le plist en utilisant la commande sudo launchctl load -w /System/Library/LaunchDaemons/org.myschoolname.sleep.plist
ou redémarrer l'ordinateur et il devrait se charger lors du démarrage du système.
Si vous n'êtes pas à l'aise avec les fichiers launchd
et les outils de ligne de commande, cherchez l'application OS X payante appelée Lingon qui gère la création du fichier plist et le charge.
Voici une bonne référence sur pmset
, qui est l'outil en ligne de commande pour gérer les paramètres d'alimentation dans OS X.
Bien que pmset
puisse être utilisé pour définir des horaires de veille et de réveil, vous obtiendrez toujours cette boîte d'alerte lors de la mise en veille programmée. La commande pmset sleepnow
permet à l'ordinateur de passer immédiatement en veille sans alerte.