Matar WindowServer
o tirará da maioria das situações, mas todos os aplicativos da GUI morrerão e serão reiniciados com ele.
A solução é salvar dados em todos os aplicativos que não o fazem automaticamente usando o Applescript
ps ax | grep -i appname
osascript save.scpt 6546
, onde 6546 é o PID do seu aplicativo
O script pressionará Cmd + S e (opcionalmente) Enter
on run argv
tell application "System Events"
set theprocs to every process whose unix id is item 1 of argv
repeat with proc in theprocs
set the frontmost of proc to true
delay 1
keystroke "s" using command down
delay 1
# key code 36 # Enter
end repeat
end tell
end run
PS Isso funciona da sessão SSH para aplicativos como Sublime Text , mas não consigo descobrir o caminho para dizer ao aplicativo para sair normalmente. É um kill
ou outro reboot
. Este último deve cuidar de aplicativos compatíveis com o recurso "Continuar".