stdout, stderr y return code
Arnau Sanchez
pyarnau en gmail.com
Vie Mayo 8 11:21:54 CEST 2009
Jose Caballero wrote:
> def comando(cmd):
> err = ''
> rc, out = commands.getstatusoutput(cmd +' 2> /dev/null')
> if rc != 0:
> err = commands.getoutput(cmd +' 1> /dev/null')
>
> return out, err, rc
Hay cosas que se pueden hacer y cosas que *no* se pueden hacer. Éste código
pertenece al segundo grupo :-)
popen2.Popen3 no es muy difícil de usar:
import popen2
popen = popen2.Popen3("ls /etc/services noexiste", capturestderr=True)
stdout = popen.fromchild.read()
stderr = popen.childerr.read()
retcode = popen.wait() >> 8
http://www.python.org/doc/2.5.2/lib/module-popen2.html
http://www.python.org/doc/2.5.2/lib/popen3-objects.html
http://www.python.org/doc/2.5.2/lib/os-process.html#os-process
--
Desarrollador freelance
http://www.arnau-sanchez.com
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es