¿Cómo canalizo la salida del archivo a una variable en Python?¿Cómo canalizo la salida del archivo a una variable en Python?
¿Es posible? ¿Dice que canalice la salida de netstat
a una variable x en Python?
¿Cómo canalizo la salida del archivo a una variable en Python?¿Cómo canalizo la salida del archivo a una variable en Python?
¿Es posible? ¿Dice que canalice la salida de netstat
a una variable x en Python?
dos partes:
Shell
netstat | python read_netstat.py
Python read_netstat.py
import sys
variable = sys.stdin.read()
que leerá la salida de netst a en una variable.
Es posible. Ver:
http://docs.python.org/library/subprocess.html#replacing-bin-sh-shell-backquote
En Python 2.4 y superiores:
from subprocess import *
x = Popen(["netstat", "-x", "-y", "-z"], stdout=PIPE).communicate()[0]
Tome una mirada en el módulo de subprocess
. Le permite iniciar nuevos procesos, interactuar con ellos y leer sus resultados.
En particular, consulte la sección Replacing /bin/sh shell backquote:
output = Popen(["mycmd", "myarg"], stdout=PIPE).communicate()[0]
¿Estás seguro de que funciona? No creo que los backticks llamen al shell en Python y el uso de ellos no se recomienda de todos modos. –
Hola, pensé que lo probaría. Los backticks son necesarios al menos usando cygwin. Sin apoyos, recibo ayuda para escupirme. >>> x = Popen (["netstat", "-a", "-b", "-e"], stdout = PIPE) .communicate() [0] >>> x 'Estadísticas de interfaz \ r \ n \ r \ n Recibido Enviado \ r \ n \ r \ nBytes 636096584 44729983 \ rn \ nUnicast paquetes 540296 297233 \ r \ nPaquetes no unidifusión 1058608 338 \ r \ nDiscards 0 0 \ r \ nErrores 0 13 \ r \ nProcedimientos desconocidos 4405 \ r \ n ' – manifest
Intenté en DOS también, el mismo trato. Back-ticks requerido. – manifest