Código python:
Ver original
[CODE]from subprocess import Popen, PIPE, STDOUT p = Popen('ping -c 1 127.0.0.1', shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) output = p.stdout.read() print output
Y la salida de esto es la siguiente :
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_req=1 ttl=64 time=0.042 ms
--- 127.0.0.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.042/0.042/0.042/0.000 ms
La salida es justamente la que quiero pero ahora al ejecutar otro comando se queda tildado el gedit.El codigo es el siguiente:el cual es el servidor de trafico de iperf
Código python:
Ver original
from subprocess import Popen, PIPE, STDOUT p = Popen('iperf -u -s -p 5003', shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT, close_fds=True) output = p.stdout.read() print output
La salida tendria que ser la siguiente :
------------------------------------------------------------
Server listening on UDP port 5003
Receiving 1470 byte datagrams
UDP buffer size: 124 KByte (default)
------------------------------------------------------------
[ 3] local 127.0.0.1 port 5003 connected with 127.0.0.1 port 44871
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0- 3.0 sec 384 KBytes 1.05 Mbits/sec 0.002 ms 0/ 7026 (0%)
[ 3] 0.0- 3.0 sec 1 datagrams received out-of-order
Para generar trafico en el cliente se utiliza
"iperf -u -c 127.0.0.1 -l 56 -i 1 -p 5003 -t 3"
Algunas ideas ? ..