запустить процесс в другом терминале - PullRequest
0 голосов
/ 30 апреля 2011

Я на самом деле запускаю подпроцесс из программы на Python, используя Popen

proc= subprocess.Popen("xterm -e python script.py", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

И когда этот процесс выполняется на xterm, мы можем убить его с помощью Ctrl+CЕсть ли способ отправить другие сигналы, используя (Ctrl+Z и fg, ...), чтобы возобновить и продолжить работу?Другим решением будет запуск этого процесса в другом терминале без использования xterm -e возможно ли это?Любое другое решение будет полезно.Спасибо

Ответы [ 2 ]

1 голос
/ 30 апреля 2011

Вы можете сделать это программно в psutil

import psutil
p = psutil.Pocesss(proc.pid)
p.suspend()
p.resume()
0 голосов
/ 30 апреля 2011

С Python2.6 +

# send ctrl+c
popen.send_signal(signal.SIGINT)
...