[python] stdout v subprocess

"Ing. Vladislav Ludík" vlada na ludik.cz
Sobota Říjen 27 13:54:07 CEST 2012


Výsledek:

Bez chyby: sts = 0, stdout = None, stderr =
Chyba: sts = 1, stdout = None, stderr = scp: 
/home/samba/zakladni/READMEx.txt: No such file or directory

Díky, funguje to
V.L.

azurIt napsal(a):
> Skus vyvolat nejaku chybu, aby to nieco vypisalo a uvidis, ci to funguje.
>
>
>
>
> ______________________________________________________________
>   
>> Od: "\Ing. Vladislav Ludík\" <vlada na ludik.cz>
>> Komu: Konference PyCZ <python na py.cz>
>> Dátum: 27.10.2012 13:25
>> Predmet: Re: [python] stdout v subprocess
>>
>> subprocess.Popen.communicate jsem zkoušel také, vrací však prázdné hodnoty.
>> Zřejmě proto, jelikož vlastní command je bez chyby.
>>
>>
>> azurIt napsal(a):
>>     
>>> 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
>>>>
>>>>     
>>>>         
>>> _______________________________________________
>>> Python mailing list
>>> Python na py.cz
>>> http://www.py.cz/mailman/listinfo/python
>>>   
>>>       
>> _______________________________________________
>> Python mailing list
>> Python na py.cz
>> http://www.py.cz/mailman/listinfo/python
>>
>>     
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>   



Další informace o konferenci Python