Tra le altre cose, se vuoi restare aggiornato, ti consiglio di dare
un'occhiata al modulo subprocess, particolarmente alla sezione su come
rimpiazzare le chiamate os.popen*:

http://docs.python.org/library/subprocess.html#replacing-os-popen-os-popen2-os-popen3

Con la popen, ad esempio, mi è capitato di fare qualcosa di simile:

p = subprocess.Popen(['axel', '-o', file, self.url], shell=False,
stdout=subprocess.PIPE)
line = p.stdout.readline()
while line != None and line != '' and not p.poll():
    [...]
    line = p.stdout.readline()

In questo caso ovviamente mi serviva l'output riga per riga (man mano
che axel avanzava), ma puoi anche leggere tutto in blocco.

Paolo

On Fri, 2011-01-14 at 12:03 +0100, Stefano Dal Pra wrote:
> Ciao,
> prova con os.popen3 :
> stdin,stdou,stderr = os.popen("ping 151.1.1.1")
> 
> dovresti scoprire che il SIOCADDRT compare con stderr.readline() ...
> 
> Stefano

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a