2012-06-12 2 views
1

Что я хочу сделать, это сделать скрипт bash, который в какой-то момент запускает другой терминал с командой в нем и в то же время сохраняет нормальный поток программы в основном потоке.Открытие другого окна через скрипт bash при сохранении основного потока

я мог сделать первую часть с помощью

xterm -e python something.py 

Но основной поток программы также делает паузу, пока вновь откроется окно не будет закрыто.

, пусть,

xterm -e python something.py 
echo "Wait for sometime" 
sleep 7 

kill something.py 

Итак, я хочу, чтобы убить something.py открылась в новом окне, автоматически через 7 секунд. Любой способ, который может быть реализован в bash. Или в самой программе Python, чтобы закрыть себя через 7 секунд.

+0

Кстати, это не потоки, а процессы. Bash не поддерживает многопоточность (пока) – cdarke

ответ

3

Замените линию с этим:

xterm -e python something.py & 

Обратите внимание на & - он запрашивает оболочку для выполнения команды в фоновом режиме и возобновить выполнение сценария.

+0

Спасибо. Не знал, что это будет так просто. Работала отлично. –

3

Поступай, как @sarnold предполагает и использование:

kill %1 

Чтобы убить эту работу.

+1

Ах, еще раз я был рад ответить на часть первая и пропустил вторую часть. Когда день обернется, и я получу больше голосов, я вернусь. :) – sarnold

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