J'aimerais pouvoir éteindre mon écran en ligne de commande.
Je sais qu'il ya le raccourci clavier ctrl+ ⇧+ ⏏mais je veux le faire à partir d' un script shell ou à distance.
Y a-t-il un moyen?
terminal
sleep-wake
screen
Gregseth
la source
la source
Réponses:
Sous OS X 10.9, vous pouvez simplement faire
pmset displaysleepnow
. Cela éteindra immédiatement votre écran sans modifier aucun de vos paramètres et sans mettre tout l'hôte en veille.Les privilèges étendus ne semblent pas être nécessaires (du moins avec les versions récentes d'OS X), mais si vous recevez un message sur les privilèges inadéquats, vous pouvez le faire
sudo pmset displaysleepnow
.D'après les commentaires des commentateurs, cette option n'est pas disponible sous OS X 10.8 ou une version antérieure.
la source
Bien que je n’aie pas été en mesure de trouver une commande qui mette en veille l’affichage de manière native, il existe 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 de l'exécution du terminal ou de SSH
open /Applications/Sleep\ Display.app
Cliquez avec le bouton droit sur l'application dans le dossier Téléchargements, puis cliquez sur "Afficher le contenu du paquet". Naviguez jusqu'au
Contents/MacOS
fichier sleepdisplay et copiez-le.Accédez à
/usr/bin
(vous pouvez utiliser le raccourci ⇧+ ⌘+ Get tapez le répertoire) et collez le fichier binaire. Vous pourrez maintenant taper la commandesleepdisplay
dans Terminal ou via SSH et l’affichage se mettra immédiatement en veille.J'espère que cela t'aides!
la source
Voici un script shell simple qui le fera.
Ceci exécutera / démarrera les paramètres que vous avez activés pour l’économiseur d’écran sur cet ordinateur.
la source
Le script suivant fera le travail (dans Leopard et versions ultérieures), mais il doit être exécuté avec
sudo
:Le principe est que vous
pmset
pouvez définir un délai avant la mise en veille de l'affichage, mais le problème est qu'une valeur de 0 désactive la fonctionnalité, plutôt que de définir le délai à zéro, et une valeur de 1 correspond à un délai d'une minute. La magie ici est qu’une valeur de 2 ^ 31 semble être stockée comme un zéro négatif, ce qui fonctionne comme par magie en "éteignant l’affichage immédiatement".Dans Tiger et les versions antérieures, un nombre magique différent était nécessaire, car une variable de taille binaire 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- ejectet peut être utilisé sur un MacBook Air sans ejectclé.
la source
sur macOS Sierra
pmset displaysleepnow
caffeinate -u -t 1
pmset -g powerstate IODisplayWrangler | tail -1 | cut -c29
résultats <4 sont en veilleun serveur HTTP à petit nœud pour définir l’état de l’écran de votre Mac à distance: https://github.com/ycardon/switch-api
la source
"echo $[$(pmset -g powerstate IODisplayWrangler | tail -1 | cut -c29) - 4]"
(en utilisant ceci pour true / false "is screen on?").Exécutez la commande suivante pour exécuter un AppleScript court qui met l'affichage en veille:
Le nom de la commande suggère qu'il peut mettre le système entier en veille dans certaines circonstances, mais je ne pouvais pas le faire en effectuant des tests limités. minutes jusqu'à ce que je "réveille" le système. Il avait continué à imprimer le résultat pendant tout le temps.
la source
J'espère vraiment que cette réponse n'est pas trop en dehors des sentiers battus. Ma façon préférée de dormir, de redémarrer, d’arrêter - et surtout de verrouiller - un Mac utilise Alfred (le lanceur d’application).
Il ne nécessite aucun script, connaissance des scripts ou utilisation de terminal, ce qui est génial.
Cependant, si vous VOULEZ utiliser un terminal, ce n'est probablement pas la solution pour vous.
la source
Réveiller:
caffeinate -u -t 2
Sommeil:
pmset displaysleepnow
la source
Vous pouvez utiliser la
pmset
commande pour modifier la valeur de displaysleep, par exemple(nécessite root)
la source
Jetez un coup d'oeil au maclock du projet open source github
Par défaut, il lance simplement l'économiseur d'écran, mais vous pouvez mettre l'affichage en veille avec:
Sous les couvertures, il s’agit d’un script bash qui consiste essentiellement à appeler:
la source
C'est un vieux problème, mais il semble qu'il n'y ait pas vraiment de bonnes réponses à cette question.
J'ai un AppleScript au travail, bien qu'il nécessite une application tierce, non maintenue et non enregistrable, Extra Suites. Il peut être téléchargé sur l' ancien site Web du développeur .
Je l'ai également incorporé à un flux de travail Alfred .
la source
Je l'ai fait avec
sudo shutdown -s now
.Notez que vous aurez cependant besoin du privilège administrateur.
la source
Voici -
la source
Utiliser Alfred (gratuit sur l'AppStore) est un excellent moyen de mettre l'affichage en veille en écrivant simplement: "sommeil". Ne devient pas plus simple que ça.
Bien sûr, Alfred fait beaucoup plus que cela, vous pouvez également redémarrer, vous déconnecter, vider la corbeille, verrouiller, arrêter et bien d'autres choses encore.
la source
Pas besoin d'app supplémentaire, il suffit d'utiliser
tell application "Finder" to sleep
la source
L'application Launchbar fonctionne aussi bien que Alfred. Dans mon cas, la barre d'espace CMD puis S [Sleep] - simple et rapide
la source