На Linux и Mac OS X, там уничтожение или команда killall, которая может позволить приложению попросить несохраненный документ перед выходом?

На Linux и Mac OS X, там a kill или killall command это может позволить приложению попросить несохраненный документ перед выходом, отчасти как просьба, чтобы приложение вышло, или нажатие на "близкую" кнопку окна.

Например, ввести somecommand TextEdit на Mac и TextEdit спросит Вас, если Вы захотите сохранить несохраненный документ.

1
задан 29.06.2010, 18:07

6 ответов

Это составило, как отдельная программа отвечает на сигналы. Если Вы делаете a kill с 15 (SIGTERM) программа, как предполагается, делает, очистка затем выходит. Если, какой и как другой вопрос.

4
ответ дан 12.12.2019, 08:16

Для OS X попробуйте сценарий в приложениях Выхода вежливо из командной строки из MacOSXHints.com. Можно сказать целевое приложение, сохранить ли его открытые файлы. ОПРЕДЕЛЕННЫЙ ДЛЯ OS X, хотя - это использует AppleScript.

2
ответ дан 12.12.2019, 08:16

Не похож на него, хотя можно посмотреть, проверяют различные доступные сигналы уничтожения и испытывают их. Я попробовал некоторых, но они все, кажется, просто прерывают процесс вместо того, чтобы отправить сигнал выхода.

0
ответ дан 12.12.2019, 08:16

Mac:

osascript -e 'tell app "TextEdit" to quit'

Если необходимо указать приложение как аргумент,

osascript -e 'on run args
  tell app (item 1 of args) to quit
end run' TextEdit

(Или сохраните заключенный в кавычки сценарий в файле и osascriptscript appname.)

0
ответ дан 12.12.2019, 08:16

Я думаю, что это зависит от приложения, но уничтожьте-2,-3 или-15 мог бы быть тем, что Вы ищете...

0
ответ дан 12.12.2019, 08:16

Сигналы, которые завершают приложение, не предназначены, чтобы позволить приложению дальнейшее взаимодействие с пользователем. Любой пользователь больше не доступен ( HUP сигнал, исходное значение которого состояло в том, что пользователь был подключен к компьютеру через модем и телефон, умер), или пользователь не хочет быть побеспокоенным (значение по умолчанию TERM предупредите и его более сильные одноуровневые элементы QUIT и KILL). Много приложений попытаются сохранить несохраненную работу где-нибудь, если они получат HUP сигнал, все же.

Другая опция для Linux (и другие нельды) состоит в том, чтобы отправить уведомление окну, а не процесс: _NET_CLOSE_WINDOW сообщение говорит приложению избавляться от определенного окна корректно. Можно отправить это сообщение от командной строки с wmctrl, например, wmctrl -c WINDOW_TITLE_SUBSTRING. К сожалению, не вся поддержка приложений это.

0
ответ дан 12.12.2019, 08:16

Теги

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