2016-09-30 1 views
0

Я в настоящее время имеют следующие настройки:Subprocess терминатор, когда Python завершает работу при использовании отречься в i3

в i3 конфигурации:

bindsym $mod+d exec xfce4-terminal --title="Supermenu" -e "path/to/supermenu" 
for_window [title="Supermenu"] floating enable 

Сценарий он выполняет является Python скрипт исполняемым (используя хижину и CHMOD + х), то есть эта линия (среди многих других, которые не имеют ничего общего с ним):

os.system(command + " >/dev/null 2>&1 &") 

Мои ожидания, в том, что при выходе из сценария Python, процесс вызывается command должен оставаться включенным, из-за &. Однако он все равно выйдет после выхода xfce4-терминала! (что происходит после завершения сценария).

Я также попытался приклеивать disown в конце и nohup в начале, оба не сделали никакой разницы.

Я могу подтвердить это, когда скрипт завершает работу, потому что я попытался использовать time.sleep, чтобы узнать, даже если он запускается, и да, но он завершается после закрытия терминала.

Однако, если я запускаю firefox или ghetto-skype, они прекращаются, однако, xfce4-terminal не прекращается после того, как «меню» закрывается!

И даже странно - если я запустил скрипт из xfce4-терминала (а не с i3), подпроцесс тоже не завершится!

Я очень смущен относительно того, что происходит, и был бы признателен за любую помощь в его понимании и предотвратил бы закрытие процессов, отличных от xfce4-terminal, после того, как это сделает меню.

ответ

1

Вы не перенаправляете стандартный ввод. Я предполагаю, что он получает EOF, когда xfce4-terminal закрывается.

+0

Работала, однако мне также нужно было добавить 'time.sleep (0.1)' после 'system' по какой-то причине ... Я согласен с ответом, но, пожалуйста, добавьте, что для будущих посетителей –

+0

Обновление: не работайте с 'eclipse' даже с более длинным сном, закрывается, как только терминал закрывается ... –

+0

@ TheSuperCuber Обратите внимание, что вы можете ответить на свой вопрос, как только вы решите решение самостоятельно. – dorukayhan

 Смежные вопросы

  • Нет связанных вопросов^_^