X-Spam-Check-By: sourceware.org To: cygwin AT cygwin DOT com From: David Bear Subject: Re: stupid spaces in environment vars Date: Thu, 08 Feb 2007 20:34:11 -0700 Lines: 51 Message-ID: <1851358.f0UO6cioO9@teancum> References: <1207595 DOT 6YXS76RrHQ AT teancum> <45CA8AAF DOT 9050107 AT cygwin DOT com> Reply-To: david DOT bear AT asu DOT edu Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit Mail-Copies-To: david DOT bear AT asu DOT edu User-Agent: KNode/0.9.0 X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Larry Hall (Cygwin) wrote: > David Bear wrote: >> I would like to have used something like >> >> cd $USERPROFILE >> >> in a bash script but since windows insists on putting spaces in names, >> this seems impossible. >> >> I did find a usecase where the spaces in c:\Documents and >> Settings\username were tripple quoted. However, this did not work for me. >> Bash still wanted to split on the space. >> >> Is there any cool utility that could be used like >> cleanpath=pathcleaner($USERPROFILE) >> cd $cleanpath >> >> I know this is a consistent issue with cygwin. There really needs to be a >> good solution. > > $ cat cup > #!/bin/bash > cd "$USERPROFILE" > pwd > > $ ./cup > /Documents and Settings/me > > What's the problem again? > 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` echo $prodir cd $prodir cd /cygdrive/c/Documents\\\ and\\\ Settings/$USERNAME pwd cd $curdir pwd -- -- David Bear College of Public Programs at Arizona State University -- 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/