Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 14, 2020 12:58:35

dmitriy.chilikin
Зарегистрирован: 2020-04-14
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Вопрос по процессам

Добрый день! Я запускаю скрипт на питоне в терминале(терминал1). В скрипте я использую subprocess.Popen и создаю новый терминал(терминал2), в котором происходит запуск процесса. Хотелось бы узнать, как получить информацию о pid процесса, который создается в терминале2 и передать его в терминал1 ? Подскажите, пожалуйста, как это можно сделать ?

Офлайн

#2 Апрель 14, 2020 13:49:51

Striver
От:
Зарегистрирован: 2006-10-26
Сообщения: 247
Репутация: +  22  -
Профиль   Отправить e-mail  

Вопрос по процессам

dmitriy.chilikin
Добрый день! Я запускаю скрипт на питоне в терминале(терминал1). В скрипте я использую subprocess.Popen и создаю новый терминал(терминал2), в котором происходит запуск процесса. Хотелось бы узнать, как получить информацию о pid процесса, который создается в терминале2 и передать его в терминал1 ? Подскажите, пожалуйста, как это можно сделать ?
Находясь внутри процесса можно сделать так:
 import os
pid = os.getpid()



Офлайн

#3 Апрель 14, 2020 19:53:04

dmitriy.chilikin
Зарегистрирован: 2020-04-14
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Вопрос по процессам

Striver
Находясь внутри процесса можно сделать так:
import os
pid = os.getpid()
Не уверен, что это подойдет для моего случая. Приложил код о чем я писал выше.
А не подскажете, как тогда его вернуть в 1 скрипт и возможно ли это вообще ? Из идей сделать это через PIPE, но не уверен, что это возможно в данном случае.

 1.py
from subprocess import PIPE, run
import subprocess
 
if __name__ == '__main__':
    process = subprocess.Popen([' gnome-terminal -- bash -c "python3 2.py; "'], shell=True, stdout=PIPE)

 2.py
from subprocess import PIPE, run
import subprocess
 
if __name__ == '__main__':
    process = subprocess.Popen(['ping 8.8.8.8'], shell=True)
    print(process.pid)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version