delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/02/08/22:56:05

X-Spam-Check-By: sourceware.org
Message-ID: <45CBF0DD.4AD26775@dessent.net>
Date: Thu, 08 Feb 2007 19:56:13 -0800
From: Brian Dessent <brian AT dessent DOT net>
X-Mailer: Mozilla 4.79 [en] (Windows NT 5.0; U)
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: stupid spaces in environment vars
References: <1207595 DOT 6YXS76RrHQ AT teancum> <45CA8AAF DOT 9050107 AT cygwin DOT com> <1851358 DOT f0UO6cioO9 AT teancum>
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/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

David Bear wrote:

> Okay, the problem is in quoting in shell scripts, I think.
> 
> Here's an example:
> #!/usr/bin/bash
> curdir=`pwd`
> echo $curdir
> prodir=`cygpath $USERPROFILE`

Should be:

prodir=$(cygpath "$USERPROFILE")

> echo $prodir
> cd $prodir

Should be:

cd "$prodir"

> cd /cygdrive/c/Documents\\\ and\\\ Settings/$USERNAME

Should be:

cd "/cygdrive/c/Documents and Settings/$USERNAME"

> pwd
> cd $curdir

Should be:

cd "$curdir"

See the pattern?  In general whenever you have a variable that might
contain spaces you just need to quote it.  Forget the triple-backslash
nonsense.  Double quotes are all you need.

Brian

--
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