Я хотел бы иметь возможность отключить мой экран из командной строки.
Я знаю, что есть сочетание клавиш ctrl+ ⇧+, ⏏но я хочу сделать это из сценария оболочки или удаленно.
Есть ли способ?
terminal
sleep-wake
screen
gregseth
источник
источник
Ответы:
В OS X 10.9 вы можете просто сделать
pmset displaysleepnow
. Это немедленно отключит ваш дисплей без изменения каких-либо настроек или перевода всего хоста в спящий режим.Повышенные привилегии, кажется, не требуются (по крайней мере, в последних версиях OS X), но если вы получите сообщение о неадекватных привилегиях, вы можете это сделать
sudo pmset displaysleepnow
.На основе отзывов от комментаторов, это не доступно в OS X 10.8 или ранее.
источник
Несмотря на то, что я не смог найти команду, которая изначально будет отображать спящий режим, есть приложение, которое вы загрузите и которое сделает это. Здесь есть два варианта.
Установите приложение в папку «Приложения» и запустите из терминала или SSH
open /Applications/Sleep\ Display.app
Щелкните правой кнопкой мыши приложение из папки «Загрузки» и нажмите «Показать содержимое пакета». Перейдите
Contents/MacOS
и скопируйте файл sleepdisplay.Перейдите к
/usr/bin
(вы можете использовать сочетание клавиш ⇧+ ⌘+ Gи ввести каталог) и вставить двоичный файл. Теперь вы сможете ввести командуsleepdisplay
в Терминал или через SSH, и дисплей сразу перейдет в спящий режим.Надеюсь это поможет!
источник
Вот простой сценарий оболочки, который сделает это.
Это запустит / запустит любые настройки, которые вы включили для Заставки на этом компьютере.
источник
Следующий скрипт выполнит эту работу (в Leopard и более поздних версиях), но его необходимо запустить с помощью
sudo
:Предполагается, что
pmset
можно установить время до отключения дисплея, но проблема в том, что значение 0 отключает функцию, а не устанавливает задержку на ноль, а значение 1 - полная минутная задержка. Волшебство здесь заключается в том, что значение 2 ^ 31, похоже, сохраняется как отрицательный ноль, который магически функционирует как «немедленно выключить дисплей».В Tiger и более ранних версиях требовалось другое магическое число, потому что для хранения задержки в минутах использовалась внутренняя переменная размера в битах, пока дисплей не выключился.
Это имитирует поведение control- shift- ejectи может быть использован на MacBook Соотношение эфиры без ejectключа.
источник
на macOS Сьерра
pmset displaysleepnow
caffeinate -u -t 1
pmset -g powerstate IODisplayWrangler | tail -1 | cut -c29
результаты <4 - спящий дисплейHTTP-сервер небольшого узла для удаленной установки состояния экрана вашего Mac: https://github.com/ycardon/switch-api
источник
"echo $[$(pmset -g powerstate IODisplayWrangler | tail -1 | cut -c29) - 4]"
(используя это для true / false "is screen on?").Выполните следующую команду, чтобы выполнить короткий AppleScript, который переводит дисплей в спящий режим:
Название команды предполагает, что в некоторых обстоятельствах она может перевести всю систему в спящий режим, но я не смог этого сделать в ограниченном тестировании: я протестировал его с помощью сценария оболочки, который я запустил незадолго до выполнения этой команды, и он работал в течение нескольких минут, пока я "не разбудил" систему. Он продолжал печатать вывод в течение всего времени.
источник
Очень надеюсь, что этот ответ не слишком удачен. Мой любимый способ спать, перезагружаться, выключаться - и, самое главное, блокировать - Mac использует Alfred (панель запуска приложений).
Это не требует каких-либо сценариев, знания сценариев или использования терминала, что замечательно.
Однако, если вы специально хотите использовать терминал, это, вероятно, не решение для вас.
источник
Услуга:
caffeinate -u -t 2
Спать:
pmset displaysleepnow
источник
Вы можете использовать
pmset
команду, чтобы изменить значение для displayleep, что-то вроде(требуется root)
источник
Взгляните на проект Maclock с открытым исходным кодом.
По умолчанию он просто запускает экранную заставку, но вы можете перевести дисплей в режим сна:
Под прикрытием это bash-скрипт, который по сути просто вызывает:
источник
Ну, это старый вопрос, но, похоже, нигде нет хороших ответов на этот вопрос.
Я получил AppleScript для работы, хотя для этого требуется стороннее, не поддерживаемое и не регистрируемое приложение - Extra Suites. Его можно скачать на старом сайте разработчика .
Я также включил его в рабочий процесс Альфреда .
источник
Я сделал это с
sudo shutdown -s now
.Обратите внимание, что для этого вам понадобятся права администратора.
источник
Ну вот -
источник
Использование Alfred (бесплатно в AppStore) - отличный способ перевести дисплей в спящий режим, просто написав: «sleep». Не становится проще, чем это.
Конечно, Альфред делает гораздо больше, вы также можете перезагрузить компьютер, выйти из системы, очистить корзину, заблокировать, завершить работу и многое другое.
источник
Не нужно дополнительное приложение, просто используйте
tell application "Finder" to sleep
источник
Приложение Launchbar работает так же хорошо, как Альфред. В моём случае пробел CMD тогда S [Sleep] - просто и быстро
источник