[Python-es] gráfico en barras en tiempo real
Reynaldo Baquerizo Micheline
rbaquerizo en ehas.org
Mie Sep 26 19:53:11 CEST 2007
Reynaldo Baquerizo Micheline escribió:
> Maria Eugenia Ferrero escribió:
>> Si, ya sé; es que en realidad tengo que rescatar datos de la memoria, la
>> swap y del % de uso de la cpu. Lo de mamoria y swap podría hacerlo con
>> 'free', pero lo de la cpu solamente con top.
>> ¿Cómo sería lo de agragar un parámetro "-n1" ???? Justamente como nunca
>> acaba pienso que es lo que necesito, porque o sino con free tendría
>> que ir
>> leyendo a cada rato, o estoy equivocada?
>>
> Si nunca acaba no regresa regresa el control a tu programa.
>>
>>
>> El día 26/09/07, Arnau Sanchez <arnau en ehas.org> escribió:
>>
>>> Maria Eugenia Ferrero escribió:
>>>
>>>
>>>> import gdchart
>>>> import sys, os
>>>> datos = map(int, str(os.system('top -b | grep Mem')))
>>>>
> Si no me equivoco os.system ejecuta el comando y lo que devuelve es el
> estatus de retorno, es decir si fallo o fuese exitoso (0)
> Yo creo que con lo que arnau te dijo y utilizando el modulo commands
> deberías utilizarlo de estar forma
>
> import commands
>
> commands.getoutput('top -b -n1 | grep Mem')
>
> esto regresa una cadena: 'Mem: 385564k total, 378956k used,
> 6608k free, 6236k buffers'
Una forma de parsear esa cadena ( no se si la mas elegante, o la mas
eficiente)
temp = commands.getoutput('top -b -n1 | grep Mem')
total, used, free, buffers = [dato.split()[0].strip('k') for dato in
temp.split(':')[1].split(',')]
:-)
Saludos,
Reynaldo
--
Más información sobre la lista de distribución Python-es