delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/05/26/16:37:24

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <3ED27AE8.4060005@mscha.org>
Date: Mon, 26 May 2003 22:36:56 +0200
From: Michael Schaap <cygwin AT mscha DOT org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4b) Gecko/20030521 Thunderbird/0.1a
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: quoting windows pathnames
References: <Pine DOT GSO DOT 4 DOT 44 DOT 0305261537540 DOT 26092-100000 AT slinky DOT cs DOT nyu DOT edu>
In-Reply-To: <Pine.GSO.4.44.0305261537540.26092-100000@slinky.cs.nyu.edu>
X-Virus-Scanned: by amavisd-milter 0.1 @ mscha.org (http://www.amavis.org/)

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.
>>    
>>
>
>Charles,
>
>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"'
>$ ls $DIRNAME
>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
    $ cd $DIRNAME
and
    $ ls $DIRNAME
will work as you expect.
(This is controlled by the SH_WORD_SPLIT option.)

 - Michael


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019