[python] python subprocess vraci porad 1

Tomas Pelka tompelka na gmail.com
Čtvrtek Leden 21 09:44:55 CET 2010


Dobry napad, predelal sem tedy na:

--------------------------------------------------
cmd = "/usr/bin/locate"
arg1 = " -i"
arg2 = " -d /var/www/books/mlocate.db"
arg3 = str(" " + pattern)

p1 = subprocess.Popen([cmd, arg1, arg2, arg3], shell=False, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
(stdoutdata, stderrdata) = p1.communicate()

print p1.returncode
print "%s -- %s" % (stdoutdata, stderrdata)
--------------------------------------------------

Ale stale vraci 1 a zadny vysledek.


On 01/20/2010 09:44 PM, Koumes21 wrote:
> Nazdar,
>
> me napada akorat to, ze prvni parametr pro subprocess.Popen() by nemel
> vypadat jako [cmd, args], ale jako [cmd, arg1, arg2, ...], tedy ze
> jednotlive argumenty by nemely byt jen oddeleny mezerou, ale mely by
> byt samostatnymi prvky listu. Doufam, ze je to jasne a ze to pomuze
> (nezkousel jsem, jenom jsem si tohohle zrovna vsiml).
>
> K21
>
> 2010/1/20 Tomas Pelka<tompelka na gmail.com>:
>    
>> Zdravim konferenci,
>> temer cely den se peru se subprocess. Problem me dela naledujici
>> jednoducha konstrukce:
>>
>> --------------------------------------------------
>> import subprocess
>>
>> pattern = "python"
>> cmd = "/usr/bin/locate"
>> args = " -i -d /var/www/books/mlocate.db %s" % pattern
>>
>> p1 = subprocess.Popen([cmd,  args], shell=False, stdout=subprocess.PIPE,
>> stderr=subprocess.PIPE)
>> (stdoutdata, stderrdata) = p1.communicate()
>>
>> print p1.returncode
>> print "%s -- %s" % (stdoutdata, stderrdata)
>> --------------------------------------------------
>>
>> Takze cilem je spustit prikaz
>> /usr/bin/locate -i -d /var/www/books/mlocate.db python
>> v shellu tento prikaz vypise nenulovy vysledek a skonci s nulovym
>> navratovym kodem. V pythonu konci s navratovym kodem "1" a " -- ".
>>
>> Netusim proc tomu tak je, ma nekdo nejaky napad.
>> Dekuji.
>>
>> --
>> Tom
>>
>> Key fingerprint = 06C0 23C6 9EB7 0761 9807  65F4 7F6F 7EAB 496B 28AA
>> _______________________________________________
>> 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
>    


-- 
Tom



Další informace o konferenci Python