J'aimerais pouvoir éteindre mon écran à partir de la ligne de commande.
Je sais qu'il y a le raccourci clavier ctrl + ⇧ + ⏏ mais je veux le faire depuis un shell script ou à distance.
Y a-t-il un moyen ?
J'aimerais pouvoir éteindre mon écran à partir de la ligne de commande.
Je sais qu'il y a le raccourci clavier ctrl + ⇧ + ⏏ mais je veux le faire depuis un shell script ou à distance.
Y a-t-il un moyen ?
Dans OS X 10.9, vous pouvez simplement faire pmset displaysleepnow
. Cela éteindra immédiatement votre écran sans modifier aucun de vos paramètres ni mettre en veille l'hôte tout entier.
L'escalade des privilèges ne semble pas nécessaire (du moins avec les versions récentes d'OS X), mais si vous recevez un message concernant des privilèges inadéquats, vous pouvez faire ce qui suit sudo pmset displaysleepnow
.
D'après les réactions des commentateurs, cette fonction n'est pas disponible dans OS X 10.8 ou antérieur.
Bien que je n'aie pas été en mesure de trouver une commande qui mette l'écran en veille de manière native, il y a une application que vous téléchargez qui le fera. Il y a deux options à partir d'ici.
Installez l'application dans le dossier Applications et, à partir du terminal ou de SSH, exécutez les commandes suivantes open /Applications/Sleep\ Display.app
Faites un clic droit sur l'application dans le dossier Téléchargements et cliquez sur "Afficher le contenu du paquet". Naviguez jusqu'à Contents/MacOS
et copier le fichier sleepdisplay.
Naviguez vers /usr/bin
(vous pouvez utiliser le + + G et tapez le répertoire) et collez le fichier binaire. Vous pourrez maintenant taper la commande sleepdisplay
dans Terminal ou par SSH et l'écran se mettra immédiatement en veille.
J'espère que cela vous aidera !
Le script suivant fera le travail (dans Leopard et les versions ultérieures), mais il doit être exécuté avec sudo
:
La prémisse est que pmset
peut définir un temps avant la mise en veille de l'affichage, mais le problème est qu'une valeur de 0 désactive la fonction, plutôt que de mettre le délai à zéro, et une valeur de 1 est un délai complet d'une minute. La magie ici est qu'une valeur de 2^31 semble être stockée comme un zéro négatif, qui fonctionne magiquement comme "éteindre l'écran immédiatement".
Dans Tiger et les versions antérieures, un autre nombre magique était nécessaire, car une variable de taille différente était utilisée en interne pour stocker le délai, en minutes, jusqu'à ce que l'affichage s'éteigne.
Cela imite le comportement de control - shift - eject et peut être utilisé sur les MacBook Airs sans un système d'alarme. eject clé.
#!/bin/bash
original_setting=`/usr/bin/pmset -g | /usr/bin/awk '/displaysleep/ {print $2}'`
magic_number=2147483648
/usr/bin/pmset -a displaysleep $magic_number; sleep 1; /usr/bin/pmset -a displaysleep $original_setting
J'aime bien celui-là. J'ai copié/collé ce code dans un fichier /usr/local/bin/ss, chmod +x dessus, et je peux maintenant taper 'ss' dans une ligne de commande pour activer l'écran de veille. L'économiseur d'écran est à son tour configuré pour demander un mot de passe une minute après l'activation de l'économiseur d'écran (qui pourrait être abaissé davantage, je crois, si nécessaire).
Sur MacOS Sierra
pmset displaysleepnow
caffeinate -u -t 1
pmset -g powerstate IODisplayWrangler | tail -1 | cut -c29
les résultats <4 sont un affichage de sommeilun petit nœud serveur HTTP pour définir le statut de l'écran de votre Mac à distance : https://github.com/ycardon/switch-api
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.
0 votes
Cela pourrait aider : apple.stackexchange.com/questions/34884/
0 votes
Vous pouvez également lire ceci : stackoverflow.com/questions/1239439/