[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