How can I execute a shell command in a child process in Python? -


i need use multiprocessing module (rather subprocess, need use pipes) execute shell command new child process. @ moment i'm using:

p = subprocess.popen(subprocess_command, stdout=subprocess.pipe, stderr=subprocess.pipe, env=parent_env) 

where subprocess_command shell command (it runs python script arguments) , parent_env current environment environmental variable (ld_preload) set differently. equivalent using multiprocessing module? child process (python script) needs able pipe parent.

this demonstrate how streaming output popen

file1.py

import time,os while true:     print "ok ?"+os.environ["ld_preload"]     time.sleep(1) 

file2.py

import os os.environ["ld_preload"] = "5" p = subprocess.popen(subprocess_command, stdout=subprocess.pipe, stderr=subprocess.pipe, env=os.environ) p.start() line in iter(p.stdout.readline, b''):    print line    time.sleep(0.6) 

Comments

Popular posts from this blog

ruby on rails - RuntimeError: Circular dependency detected while autoloading constant - ActiveAdmin.register Role -

c++ - OpenMP unpredictable overhead -

javascript - Wordpress slider, not displayed 100% width -