[Tutor] Why is this not working? Seems like a whitespace issue

Gizmo gizmo1 at gmail.com
Mon Feb 5 03:58:25 CET 2007


Hello
I have a whole directory tree of RAR files that I wish to extract as a batch
job. In my real script I've used os.walk() and os.spawn*() but for
demonstration purposes have a look at the code below

>>> import os
>>> process=r"C:\Program Files\WinRAR\Rar.exe"
>>> startDir = r"C:\to burn"

>>> os.system(process+" x "+"C:\\to burn\\somemovie\\mymovie.rar"+"
"+startDir)

This doesnt work for me.. I get the error "  'C:\Program' is not recognized
as an internal or external command, operable program or batch file."
Notice that it says "C:\Program".... thats the incorrect path, the path is
supposed to be "C:\Program Files\..."

I realised the problem definitely because of the space between "Program" and
"Files"..
Actually, I even know the solution to an extend. In Windows command prompt,
whenever you have whitespaces in your path, you are expected to enclose the
whole path in double quotes; for example:

C:\>rar.exe x "C:\to burn\blah blah\"

I think this is the reason, but I am unsure. Your support is greatly
appreciated.

Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.python.org/pipermail/tutor/attachments/20070204/6bcfd099/attachment.htm 


More information about the Tutor mailing list