Articles of subprocess

Comuníquese con el subproceso sin esperar a que el subproceso termine en Windows

Tengo un simple echoprocess.py: import sys while True: data = sys.stdin.read() sys.stdout.write(“Here is the data: ” + str(data)) Y un parentprocess.py from subprocess import Popen, PIPE proc = Popen([“C:/python27/python.exe”, “echoprocess.py”], stdin = PIPE, sdtout = PIPE) proc.stdin.write(“hello”) print proc.stdout.read() Esto simplemente se cuelga hasta que se termina echoprocess.py. Quiero comunicarme con este subproceso varias veces […]

¿Puedo usar un solo script de Python para crear un virtualenv e instalar Requirements.txt?

Estoy tratando de crear una secuencia de comandos donde creo un virtualenv si no se ha hecho, y luego instalo los requisitos.txt. No puedo llamar a la fuente normal / env / bin / activar y activar, luego usar pip para instalar Requirements.txt. ¿Hay alguna forma de activar el virtualenv y luego instalar mis requisitos […]

Subproceso de Python: espere a que finalice el comando antes de comenzar el siguiente.

He escrito un script de Python que descarga y convierte muchas imágenes, utilizando wget y luego ImageMagick a través de llamadas de subprocess encadenadas: for img in images: convert_str = ‘wget -O ./img/merchant/download.jpg %s; ‘ % img[‘url’] convert_str += ‘convert ./img/merchant/download.jpg -resize 110×110 ‘ convert_str += ‘ -background white -gravity center -extent 110×110’ convert_str += […]

Uso de Python para ejecutar el ejecutable y completar la entrada del usuario

Estoy tratando de usar Python para automatizar un proceso que implica llamar a un ejecutable de Fortran y enviar algunas entradas de usuario. He pasado algunas horas leyendo preguntas similares e intentando diferentes cosas, pero no he tenido suerte. Aquí hay un ejemplo mínimo para mostrar lo que probé el último #!/usr/bin/python import subprocess # […]

Python: ejecutar el script de shell con argumentos (variable), pero el argumento no se lee en el script de shell

Estoy intentando ejecutar un script de shell (no comando) desde python: main.py ——- from subprocess import Popen Process=Popen([‘./childdir/execute.sh’,str(var1),str(var2)],shell=True) execute.sh ———- echo $1 //does not print anything echo $2 //does not print anything var1 y var2 son algunas cadenas que estoy usando como entrada para el script de shell. ¿Me estoy perdiendo algo o hay otra […]

Interacción de subproceso Python, ¿por qué mi proceso funciona con Popen.communicate, pero no con Popen.stdout.read ()?

Estoy intentando comunicarme con un bot de chat de línea de comandos con Python usando el módulo de subprocess . (http://howie.sourceforge.net/ utilizando el binario win32 comstackdo, ¡tengo mis razones!) Esto funciona: proc = Popen(‘Howie/howie.exe’, stdout=PIPE,stderr=STDOUT,stdin=PIPE) output = proc.communicate() Pero Popen.communicate espera a que Popen.communicate el proceso (¿y lo envía EOF?), Quiero poder interactuar con él. […]

Python Hadoop Streaming Error “ERROR streaming.StreamJob: ¡El trabajo no tuvo éxito!” Y el seguimiento de la stack: ExitCodeException exitCode = 134

Estoy intentando ejecutar el script de Python en el clúster de Hadoop utilizando Hadoop Streaming para el análisis de sentimientos. El mismo script que estoy ejecutando en la máquina local que se está ejecutando correctamente y dando salida. para ejecutar en la máquina local utilizo este comando. $ cat /home/MB/analytics/Data/input/* | ./new_mapper.py y para ejecutar […]

Ejecutando el comando DevCon CMD desde python

Quiero reiniciar el controlador con DevCon desde el script de Python. Funciona desde la línea de comandos con este comando: devcon restart \”sd0007322081041363_kcanv\” Intenté esto: os.system(“devcon restart \”sd0007322081041363_kcanv\””) con resultado ‘devcon’ is not recognized as an internal or external command Leí que os.system está obsoleto y necesito usar subprocess.check_output, así que bash esto: subprocess.check_output([‘devcon’, ‘restart’, […]

¿Cómo lograr los resultados deseados al usar los subprocesos Popen.send_signal (CTRL_C_EVENT) en Windows?

En Python 2.7 en Windows, de acuerdo con la documentación, puede enviar una documentación CTRL_C_EVENT (Python 2.7 Subprocess Popen.send_signal). Sin embargo, cuando lo probé no recibí la interrupción de teclado esperada en el subproceso. Este es el código de ejemplo para el proceso padre: # FILE : parentProcess.py import subprocess import time import signal CREATE_NEW_PROCESS_GROUP […]

Python ‘subprocess’ CalledProcessError: El comando ” devolvió un estado de salida distinto de cero 1

Ejecutando el siguiente script … import socket import sys from collections import OrderedDict from subprocess import check_output from threading import Thread […] class IpCheck(Thread): RECEIVED_PACKAGES_RE = re.compile(r'(\d+) received’) def __init__(self, ip): Thread.__init__(self) self.ip = ip self.result = None def run(self): match = self.RECEIVED_PACKAGES_RE.search( check_output([‘ping’, ‘-q’, ‘-c2’, ‘-W1’, self.ip]) ) successful_ping_count = int(match.group(1)) if match else […]