Comment puis-je hiberner / suspendre depuis la ligne de commande et le faire à un moment précis

30

J'ai réussi à savoir comment suspendre / mettre en veille prolongée le système à partir de la ligne de commande en lisant Comment puis-je suspendre / mettre en veille prolongée depuis la ligne de commande? .

Cependant, je voudrais savoir comment utiliser la ligne de commande pour suspendre / hiberner à un moment donné, en termes absolus (exemple, 11PM) ou relatifs (par exemple, en 30 minutes).

Je sais déjà comment faire avec l’arrêt, mais je suis sûr que la commande est similaire.

    
posée Ederico 13.11.2011 - 20:04
la source

3 réponses

38

Vous pouvez utiliser at pour planifier une action, y compris l'exécution des commandes détaillées dans cette question .

Par exemple, si vous souhaitez hiberner en 30 minutes:

echo 'pmi action hibernate' | at now + 30 min

Ou si vous voulez suspendre à 23h00:

echo 'pmi action suspend' | at 11pm

Si vous devez exécuter une commande avec root , exécutez at avec sudo plutôt que la commande elle-même avec sudo (puisque sudo ne doit être exécuté que de manière interactive, sauf si vous ne l'avez pas configuré) pour demander votre mot de passe). Par exemple, les équivalents des commandes ci-dessus utilisant pm-hibernate et pm-suspend sont:

echo pm-hibernate | sudo at now + 30 min

echo pm-suspend | sudo at 11pm

    
réponse donnée Eliah Kagan 13.11.2011 - 20:39
la source
7

Pour une spécification relative (par exemple "après 30 minutes"), vous pouvez simplement utiliser la commande sleep pour faire en sorte que la commande suspendre / mettre en veille prolongée attende.

Exemples:

Attendez 30 minutes, puis suspendez:

sudo sleep 30m; sudo pm-suspend

Attendez une heure, puis mettez en veille prolongée:

sudo sleep 1h; sudo pm-hibernate
    
réponse donnée Eenoku 12.10.2015 - 00:50
la source
3

Pour des temps spécifiques répétés - la fermeture d’ordinateurs est une heure spécifique chaque jour. utiliser cron.

crontab -e

ajoutez ce qui suit:

15 14 1 * * pmi action suspend

Si vous souhaitez le personnaliser.

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

Pour un travail ponctuel nous la commande

Par exemple, si vous souhaitez hiberner en 30 minutes:

echo 'pmi action hibernate' | at now + 30 min

Ou si vous voulez suspendre à 23h00:

echo 'pmi action suspend' | at 11pm
    
réponse donnée cprofitt 13.11.2011 - 20:44
la source

Lire d'autres questions sur les étiquettes