os.system() bug?

Tim Peters tim.one at comcast.net
Mon Jun 9 00:58:58 CEST 2003


[Johan Fredrik Øhman]
>>>> os.system('"C:\Program Files\UltraEdit\uedit32.exe" "arg"')
> 'C:\Program' is not recognized as an internal or external command,
> operable program or batch file.
> 1
>>>> os.system('""C:\Program Files\UltraEdit\uedit32.exe" "arg"') 0
>
> I am really stumbeled by this!  Why do I have to write two " at the
> beginning of the command to make it work?  Seems like this problem
> only occurs when there is a space in the path.

That's right.  os.system() opens a command shell, and this behavior is
inherited from your command shell.  If you open a "DOS box" and type the
same things at it, you'll get the same results -- it's the Windows command
shells that require quoting paths with embedded spaces.







More information about the Python-list mailing list