Страницы

Поиск по вопросам

понедельник, 9 декабря 2019 г.

Как определить что закрылось приложение? Firefox например?

#linux #git #firefox


Нужно делать коммит профиля Firefox, каждый раз после его закрытия. Как понять что
FF закрылся? Не буду я его в процессах постоянно мониторить. Потому что пользователь
может включить машину, а браузер не запустить и чем то другим заниматься или же наоборот
запускать Firefox по несколько раз в день.
    


Ответы

Ответ 1



Подход у вас неточный. Вместо того, чтобы детектить запущенный процесс Firefox -- лучше мониторьте, что Firefox держит открытым ваш профиль. Вообще, профилей может быть несколько на компьютере, но запущенным будет только один. Определить, что профиль Firefox in use можно по наличию или отсутствию файла: "parent.lock" (Windows), "lock" and ".parentlock" (Linux) ".parentlock" (Mac OS X) Поскольку до компьютера с FF под linux доберусь только к вечеру, то сразу проверить информацию не могу, постараюсь позже дополнить ответ. И ещё. Пока искал инфу -- наткнулся на обсуждение того, что эта фича сломалась и фикс есть только для Windows. Так что пока просто обозначаю направление, куда копать -- а до полноценного решения ещё далеко. Updated. Эм. Смотрите, какая ситуация. На машине под Centos7 в профиле находится ВСЕГДА файл parent.lock - а файл lock находится только когда профиль in use. Похоже, что поломалось только под win. Мне кажется, вам в первую очередь нужно попробовать на своей системе посмотреть, как это у вас работает. Какой у вас дистрибутив Linux?

Ответ 2



например, можно заменить вызов программы вызовом «обёртки». получаете путь к исполняемому файлу: $ which программа переименовываете его, добавив к имени, например, какой-нибудь суффикс: $ sudo mv /полученный/путь /полученный/путь.realprogram а под исходным именем помещаете скрипт-обёртку такого примерно вида: #!/bin/bash # запуск исходной программы: /полученный/путь.realprogram # ваш код, который будет выполняться после # завершения работы исходной программы не забыв добавить этому файлу биты исполнимости: $ sudo chmod +x /полученный/путь

Комментариев нет:

Отправить комментарий