[python] os.popen vs. os.system

Martin Jedlička jedlicka na poll.cz
Pátek Září 15 09:59:42 CEST 2006


No vypada to hezky, umi to super veci, ale nikde jsem tam nenasel reseni 
meho problemu a to, aby se nezobrazovalo to cerne okno cmd pri spusteni. 
Napr. funkce call umi vracet navratovou hodnotu, ale stejne se zobrazi 
to okno. Pri os.popen to nedela.

Martin

Petr Vaněk napsal(a):
> Dne čtvrtek 14 září 2006 10:08 Radek Kanovsky napsal(a):
>   
>> On Thu, Sep 14, 2006 at 08:40:35AM +0200, Martin Jedlička wrote:
>>     
>>> Zdravim,  mam takovy problem. Poustim prikaz v prikazove radce (volam
>>> cvs.exe s parametrama) a rad bych, aby se nezobrazovalo to cerne okno
>>> cmd (os.system(cmd))* *K tomu jsem pouzil os.popen, problem je ale v
>>> tom, ze kdyz se vyskytne nejaky problem (chyba pri spusteni cvs.exe),
>>> tak to nevidim. Existuje nejaky zpusob, jak mi popen vyhodi nejaky vytup
>>> pri nepovedeni operace? Nebo existuje nejaky lepsi zpusob, jak spoustet
>>> externi programek s parametrama, aniz by se poustelo cerne cmd okno, ale
>>> pri chybe by to vyhodilo nejakou navratovou hodnotu (execl ?)?
>>>       
>> V 2.4 pribyl modul `subprocess', ktery nahrazuje os.system a os.popen*.
>> Je docela flexibilni, takze by mel umet to, co pozadujete.
>>     
>
> jednoznacne se primlouvam za subprocess.
> Ve svych vecech to delam tak, ze ke zdrojakum pribalim i subprocess.py 
> prejmenovany treba na subprocess24.py a pri importu provedu:
>
> # local file subprocess24 is imported only for <2.4
> if sys.version_info[:3] < (2, 4, 2):
>     import subprocess24 as subprocess
> else:
>     import subprocess
>
> p.
>   
> ------------------------------------------------------------------------
>
> _______________________________________________
> Python mailing list
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python

-- 
Martin Jedlička
vývojový pracovník | development engineer
tel.: +420 251 115 263 | +420 777 631 351
fax: +420 251 115 255
e-mail: jedlicka na poll.cz
http://www.poll.cz

POLL, s.r.o.
Křížová 3/3132, 150 00  Praha 5 



Další informace o konferenci Python