Articles of pipe

Bucle de proceso hijo de Python sobre la entrada estándar del proceso padre de Node.js

El progtwig primario My Node.js ejecuta un proceso Python secundario y le envía datos de texto; consulte aquí la implementación. Esto funciona bien, el proceso principal del nodo escribe datos como: child.stdin.setEncoding(‘utf-8’); child.stdin.write(data + ‘\r\n’); child.stdin.end(); el proceso hijo de Python lo repite: for line in sys.stdin: ofp.write(line) y devuelve los datos al padre: child.stdout.on(‘data’, […]

diferencia entre se comunica () y .stdin.write, .stdout.read o .stderr.read – python

Quiero crear una tubería entre 3 comandos: cat = subprocess.Popen(“cat /etc/passwd”, stdout=subprocess.PIPE) grep = subprocess.Popen(“grep ””, stdin=cat.stdout, stdout=subprocess.PIPE) cut = subprocess.Popen(“cut -f 3 -d ‘:'”, stdin=grep.stdout, stdout=subprocess.PIPE) for line in cut.stdout: # process each line here Pero la documentación de Python dice: Use communicate() lugar de .stdin.write , .stdout.read o .stderr.read para evitar interlockings debido […]

Linux: Canalización a Python (ncurses) script, stdin y termios

Aparentemente, esto es casi un duplicado de ” Bad pipe filedescriptor cuando se lee desde stdin en python – Stack Overflow “; sin embargo, creo que este caso es un poco más complicado ( y no es específico de Windows, como lo fue la conclusión de ese hilo ). Actualmente estoy intentando experimentar con un […]

Ejecutar Shell Script desde Python con múltiples tuberías

Quiero ejecutar el siguiente comando de shell en una secuencia de comandos de python: dom=myserver cat /etc/xen/$myserver.cfg | grep limited | cut -d= -f2 | tr -d \” Tengo esto: dom = myserver limit = subprocess.call([“cat /etc/xen/%s.cfg | grep limited | cut -d= -f2”, str(dom)]) subprocess.call([‘/root/bin/xen-limit’, str(dom), str(limit)]) No funciona, pero no sé por qué […]

Python / POpen / gpg: suministre frase de contraseña y texto de cifrado a través de la descripción estándar o del archivo

Estoy tratando de controlar a distancia gpg a través de un progtwig python a través de POpen . Tengo un archivo que contiene datos encriptados que quiero descifrar, modificar y escribir en el disco re-encriptado. Actualmente, estoy almacenando la información descifrada en un archivo temporal (que shred cuando finaliza el progtwig). Luego realizo mis modificaciones […]

cómo utilizar pexpect para obtener una salida espontánea de subproceso en Python

Esto se relaciona con mi otro problema de subprocesamiento múltiple de mensajes con wx.TextCtrl (o GTK + subyacente) , que después de corregir con las interacciones de la GUI desde el subproceso primario, me parece que viene al problema de almacenamiento en búfer del bloque de tuberías. Entonces, ¿cómo obtener salida espontánea del subprocess.stdout? Para […]

IPC con un subproceso Python

Estoy intentando hacer un IPC simple en Python de la siguiente manera: Un proceso de Python inicia otro con subprocess . El proceso hijo envía algunos datos a una tubería y el proceso padre los recibe. Aquí está mi implementación actual: # parent.py import pickle import os import subprocess import sys read_fd, write_fd = os.pipe() […]

piping postgres COPY en python con psycopg2

Estoy escribiendo un script para hacer una copia de algunos datos entre dos máquinas en la misma red usando psycopg2. Estoy reemplazando un viejo y feo bash que hace la copia con psql -c -h remote.host “COPY table TO STDOUT” | psql -c “COPY table FROM STDIN” Esto parece ser la forma más simple y […]

Tiempo de espera de subproceso de Python?

¿Hay algún argumento u opción para configurar un tiempo de espera para el método de subproceso.Popen de Python? Algo como esto: subprocess.Popen([‘..’], …, timeout=20) ?

Errores al intentar guardar la salida de la línea de comandos en un archivo

Estaba ejecutando una herramienta de Python y tratando de guardar su salida en un archivo. Si no guardo la salida en un archivo, la herramienta funciona perfectamente bien. Pero cuando bash guardar la salida en el archivo, se produce el siguiente error e interrumpe el progtwig: File “./androdiff.py”, line 118, in main(options, arguments) File “./androdiff.py”, […]