subprocess.popen function with quotes
Gabriel Genellina
gagsl-py2 at yahoo.com.ar
Wed Mar 26 00:25:17 EDT 2008
En Wed, 26 Mar 2008 00:39:05 -0300, skunkwerk <skunkwerk at gmail.com>
escribió:
>> i'm trying to call subprocess.popen on the 'rename' function in
>> linux. When I run the command from the shell, like so:
>>
>> rename -vn 's/\.htm$/\.html/' *.htm
>>
>> it works fine... however when I try to do it in python like so:
>> p = subprocess.Popen(["rename","-vn","'s/\.htm$/
>> \.html/'","*.htm"],stdout=subprocess.PIPE,stderr=subprocess.PIPE)
>>
>> print p.communicate()[0]
>>
>> nothing gets printed out (even for p.communicate()[1])
I'd try with:
p = subprocess.Popen(["rename", "-vn", r"'s/\.htm$/\.html/'", "*.htm"],
stdout=subprocess.PIPE, stderr=subprocess.PIPE,
shell=True)
(note that I added shell=True and I'm using a raw string to specify the
reg.expr.)
--
Gabriel Genellina
More information about the Python-list
mailing list