Problem using subprocess.Popen on windows
Tim Golden
mail at timgolden.me.uk
Sun Oct 7 07:47:29 EDT 2007
jorma kala wrote:
> I get an error that I don't understand when using the subprocess module
> on Windows.
> I guess I'm missing out something very basic.
> For instance, to execute and capture the output of the ms-dos dir
> command, I tried the following:
>
> from subprocess import *
>
> p1 = Popen(["dir"], stdout=PIPE)
> output = p1.communicate()[0]
>
> But I get a WindowsError : [Error 2] File Not Found
That's because "dir" isn't an executable file in its
own right, merely a subcommand of the command shell.
Do this:
<code>
from subprocess import *
p1 = Popen ("dir", shell=True, stdout=PIPE)
print p1.communicate ()[0]
</code>
TJG
More information about the Python-list
mailing list