This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: quoting windows pathnames

Igor Pechtchanski wrote:

On Mon, 26 May 2003, Charles D. Russell wrote:

Since switching to Windows XP, I am forced to use pathnames with spaces. In
.profile, how do you quote a pathname with spaces so that cd $DIRNAME and
ls $DIRNAME will work? I can write a $DIRNAME that will work in makefiles
or when invoked from the bash shell as ls "$DIRNAME", but I can't find a way
that lets me omit the quotes when using ls from the shell prompt.


You really should use double quotes -- that's what they're there for.
You can avoid having to use pathnames with spaces with judicious use of
"mount" and/or symlinks.  If you really, really, have to use pathnames
with spaces AND not use double quotes at the prompt, you may try the
following trick:

$ alias ls='eval /bin/ls'
$ export DIRNAME='"/cygdrive/c/Program Files"'
AFP Workbench 32/                        PowerPoint Viewer/

I also recommend using mount and/or symlinks, e.g.

   $ mkdir /programs
   $ mount 'C:\Program Files' /programs

but another option is to switch from bash to zsh. By default, it does _not_ perform field splitting on the value of environment variables, so
will work as you expect.
(This is controlled by the SH_WORD_SPLIT option.)

- Michael

-- Unsubscribe info: Problem reports: Documentation: FAQ:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]