[python] python subprocess vraci porad 1
    Jan Jakubuv 
    cbboy na matfyz.cz
       
    Čtvrtek Leden 21 11:52:49 CET 2010
    
    
  
zdravim,
On Thu, Jan 21, 2010 at 09:44:55AM +0100, Tomas Pelka wrote:
> Dobry napad, predelal sem tedy na:
> 
> --------------------------------------------------
> cmd = "/usr/bin/locate"
> arg1 = " -i"
> arg2 = " -d /var/www/books/mlocate.db"
> arg3 = str(" " + pattern)
> 
Chyba je formatu argumentu arg1, atd.  Ta mezera na zacatku tam nesmi byt.
Zkuste:
arg1 = "-i"
arg2a = "-d" 
arg2a = "/var/www/books/mlocate.db"
arg3 = str(pattern)
p1 = subprocess.Popen([cmd, arg1, arg2a, arg2b, arg3], shell=False, ...)
Zbytek uz je spravne, pokud argumenty predavate jako list pak je skutecne
treba zadat je oddelene.
Pokud chcete zadat prikaz jako jeden string pak pouzijte `shell=True` a
namistu listu zadejte string:
p1 = subprocess.Popen("/usr/bin/locate -i -d file pattern", shell=True, ...)
> (stdoutdata, stderrdata) = p1.communicate()
> 
> print p1.returncode
> print "%s -- %s" % (stdoutdata, stderrdata)
> --------------------------------------------------
> 
> Ale stale vraci 1 a zadny vysledek.
> 
honza.
-- 
Heriot-Watt University is a Scottish charity
registered under charity number SC000278.
    
    
Další informace o konferenci Python