Использование команды «Терминал» для выключения, перезагрузки и сна «Мой Mac»?

Меня больше интересует использование терминалов в качестве альтернативного способа решения решений на моем Mac. Я видел этот вопрос под названием «Есть ли лучший способ для выключения /перезагрузки OSX? ".

Поэтому я хотел бы знать:

Как отключить, перезагрузить и скрыть мой Mac с помощью команды Terminal исключительно?

101 голос | спросил Simon 28 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 28 Sep 2013 13:55:05 +0400 2013, 13:55:05

3 ответа


121

Команда, которую вы выполняете, завершение работы , Это информирует всех пользователей о том, что машина будет отключена, и сообщит всем приложениям о закрытии файлов и т. Д.

Команда принимает параметр -h, -r или -s для выключения, перезапуска или сна Mac.

Команда должна выполняться как root, поэтому вам нужно использовать sudo.

например. для немедленной перезагрузки машины

sudo shutdown -r now

например. для выключения машины через 60 минут

sudo shutdown -h +60
ответил Mark 28 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 28 Sep 2013 14:14:11 +0400 2013, 14:14:11
76

Завершите работу без отображения диалогового окна подтверждения:

osascript -e 'tell app "System Events" to shut down'

Завершите работу после отображения диалогового окна подтверждения:

osascript -e 'tell app "loginwindow" to «event aevtrsdn»'

Перезапустите, не показывая диалоговое окно подтверждения:

osascript -e 'tell app "System Events" to restart'

Перезагрузите после отображения диалогового окна подтверждения:

osascript -e 'tell app "loginwindow" to «event aevtrrst»'

Выход из системы без отображения диалогового окна подтверждения:

osascript -e 'tell app "System Events" to  «event aevtrlgo»'

Выйдите из диалогового окна подтверждения:

osascript -e 'tell app "System Events" to log out'

Перейдите в режим сна (pmset):

pmset sleepnow

Перейдите в режим сна (AppleScript):

osascript -e 'tell app "System Events" to sleep'

Поместите дисплеи в режим сна (10.9 и более поздние):

pmset displaysleepnow

Четырехбуквенные коды для событий Apple перечислены в AERegistry.h.

Все приведенные выше команды системных событий отправляют события Apple в процесс loginwindow. loginwindow отправляются те же события Apple, что и выше, когда вы выходите из системы, перезагружаетесь, завершаете или помещаете Mac в режим сна. См. Технический Q & A QA1134: Программно инициирует перезапуск, завершение работы и /или выход из системы .

В соответствии с man shutdown, shutdown -h now и shutdown -r now отправляет процессы TERM за которым следует сигнал KILL.

В соответствии с руководством по разработке демонов и сервисов , когда вы выходите из системы loginwindow, процессы, которые поддерживают внезапное завершение, отправляются сигналом KILL, а процессы, которые не поддерживают внезапное завершение, прекращаются по-разному: приложения для какао получите метод делегирования applicationShouldTerminate:, приложения переднего плана получают событие Apple kAEQuitApplication, фоновые приложения получают событие Apple kAEQuitApplication, за которым следует KILL, а демоны получают сигнал TERM, за которым следует сигнал KILL через несколько секунд.

ответил user495470 28 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 28 Sep 2013 23:36:33 +0400 2013, 23:36:33
-9

также полезно, чтобы выйти из командной строки терминала, введите «exit»:

[host:~user]$ exit
ответил holbein 9 Jpm1000000pmSat, 09 Jan 2016 15:06:05 +030016 2016, 15:06:05

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132