Articles of pipe

Python Popen colgando con psexec – resultados no deseados

Estoy teniendo un problema con subprocess.Popen y lo que creo que son tuberías. Tengo el siguiente bloque de código que funciona sin problemas el 100% del tiempo cuando se ejecuta desde el cli: p = subprocess.Popen(“psexec \\\\” + serverName.get() + ” cmd /c \ ver & \ echo %USERDOMAIN% & \ dir /a C:\pagefile.sys | […]

Pasa datos binarios entre procesos python

Necesito transferir datos binarios entre procesos Python en Linux de manera eficiente. Sin embargo no puedo encontrar una manera de pasarlo con tubería. Lo más cercano que conseguí fue pasarlo como una cadena, pero mantiene su forma binaria por alguna razón, así que me causa problemas. ciphertext, tag = cipher1.encrypt_and_digest(input().encode()) print(ciphertext) El texto cifrado es […]

evitar lecturas estándar inesperadas y bloquear en subproceso

Un caso simple que estoy tratando de resolver para todas las situaciones. Estoy ejecutando un subproceso para realizar una determinada tarea, y no espero que pida un stdin, pero en casos raros que ni siquiera puedo esperar, podría intentar leer. Me gustaría evitar que cuelgue en ese caso. Aquí hay un ejemplo clásico: import subprocess […]

¿Cómo leer desde stdin o desde un archivo si no se canalizan datos en Python?

Tengo un script de CLI y quiero que lea datos de un archivo. Debería poder leerlo de dos maneras: cat data.txt | ./my_script.py ./my_script.py data.txt —Un poco como grep , por ejemplo. Lo que yo sé: sys.argv y optparse me permiten leer cualquier argumento y opciones fácilmente. sys.stdin me dejó leer los datos introducidos fileinput […]

bloques – enviar entrada a la tubería de subproceso de Python

Estoy probando conductos de subprocesos con python. Soy consciente de que puedo hacer lo que hacen los progtwigs a continuación en Python directamente, pero ese no es el punto. Solo quiero probar la tubería para saber cómo usarla. Mi sistema es Linux Ubuntu 9.04 con el python 2.6 predeterminado. Comencé con este ejemplo de documentación […]

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 […]