Сценарий выхода пользователя из системы
Я пытаюсь создать скрипт в ARD, который позволит мне выйти из системы. Теперь у меня есть скрипт, который запускает выход из системы, но я хочу, чтобы он выполнялся вместо ожидания 60 секунд. Сценарий в настоящее время:
osascript -e 'tell application "System Events" to log out'
Как я уже сказал, это работает, но затем я хочу, чтобы он нажал кнопку возврата в диалоговом окне выхода. Сценарий, который я попытался сделать так:
osascript -e 'tell application "System Events" to log out' -e 'keystroke return'
который не работает.
Есть ли способ, возможно, сказать системе нажать Cmd+Opt+q, а затем Enter, чтобы выйти из системы, не дожидаясь истечения времени ожидания?
3 ответа
Нажатие клавиши должно быть в блоке системных событий...
osascript -e 'tell application "System Events"' -e 'log out' -e 'keystroke return' -e end
Событие Apple - самый надежный способ сделать это (но оно все равно может быть заблокировано застрявшим приложением).
Ввод специальных символов сложен ... вот блок, который вы можете использовать в скрипте или через ARD.
osascript -e 'ignoring application responses' -e 'tell application "loginwindow" to "event aevtrlgo"' -e end
Символы "и" набираются с помощью option- \ и shift-option- \ соответственно.
rlgo
(kAEReallyLogOut
) Событие Apple выходит из системы без отображения диалогового окна подтверждения:
tell application "loginwindow" to «event aevtrlgo»
tell application "System Events" to log out
посылает loginwindow
logo
(kAELogOut
) Apple событие. События Apple перечислены в AERegistry.h
,