[python] stdout v subprocess

azurIt azurit na pobox.sk
Sobota Říjen 27 13:18:06 CEST 2012


http://docs.python.org/library/subprocess.html#subprocess.Popen.communicate

azur


______________________________________________________________
> Od: "\Ing. Vladislav Ludík\" <vlada na ludik.cz>
> Komu: Konference PyCZ <python na py.cz>
> Dátum: 27.10.2012 12:58
> Predmet: [python] stdout v subprocess
>
>Ahoj, poradí někdo se získáním výstupu při použití subprocess ?
>
>Příklad:
>
>Soubor je uložen na vzdáleném serveru na sambě = zdroj. Chci jej načíst 
>a uložit u sebe na mém serveru = cíl.
>
>Používám následující skript:
>
>/import subprocess
>
>def ctiSambu(zdroj, cil):
>    'Samba -> Server'
>   
>    command = [       
>        'sshpass',
>        '-p', 'heslo',
>        'scp',
>        '-P', '9999',
>        '-o', 'StrictHostKeyChecking=no',
>        '-o', 'UserKnownHostsFile=/dev/null',
>        '-o', 'LogLevel=ERROR',
>        'root na server.domena.cz:/home/samba/disk/%s' % zdroj,
>        cil
>        ]
>    prg = subprocess.Popen(command, shell=False, stdout=subprocess.PIPE)
>    return prg.wait()
>
>zdroj = 'cteny_soubor'
>cil = 'uloziste'
>
>status = //ctiSambu(zdroj, cil)
>
>if status != 0:
>    print 'nejaka chyba'
>//
>/Chyba vznikne například zadáním neexistujícího souboru apod.
>Můj dotaz se týká zjištění, jaká chyba způsobila nenulový status.
>Chybová zpráva se sice vypíše na konzolu, ale já ji však potřebuju pro 
>další zpracování mít v proměnné.
>
>Poradí mi někdo ?
>_______________________________________________
>Python mailing list
>Python na py.cz
>http://www.py.cz/mailman/listinfo/python
>


Další informace o konferenci Python