cygwin and long filenames with spaces

Igor Pechtchanski pechtcha@cs.nyu.edu
Fri Aug 9 10:57:00 GMT 2002


On Fri, 9 Aug 2002, Jon LaBadie wrote:

> On Fri, Aug 09, 2002 at 12:11:45PM -0400, Igor Pechtchanski wrote:
> > On Fri, 9 Aug 2002, Chris Game wrote:
> >
> > > In an earlier post, Randall R Schulz said...
> > >
> > > > It sounds like you have an alias or shell procedure standing in for the
> > > > built-in "cd" command.
> > >
> > > Ah! That vaguely rings a bell.
> > > <goes away and tries it>
> > > Yes, long ago in the days of beta 19.whatever I must have set cd up
> > > as a function including a 'pwd' line. The response is:
> > >
> > > cd is a function
> > > cd ()
> > > {
> > >     builtin cd $1;
> > >     pwd
> > > }
> > > cd is a shell builtin
> > >
> > > So - I need to modify the 'builtin ...' line.
> > >
> > > <tries a couple of possibilities>
> > >
> > > Well, 'builtin cd "$*";' works! No  idea if that's the correct
> > > modification though.
> > >
> > > Thanks for all the help - what  a group!
> >
> > I'd make that 'builtin cd "$@"' instead.  Not sure if it matters in the
> > case of cd, but this would make it treat quoted parameters properly...
> > Good practice, anyway. :-)
>
> Good practice for most scripts.  But it would make the two strings
> separate quoted arguments when the objective is to make them one.

No, the objective was to maintain the quoting of the arguments.  In this
particular case, a minimal change would have been 'builtin cd "$1"', but
that would not have worked for commands like 'cd -P "/cygdrive/c/Program
Files"', because it would ignore everything but the first argument.  The
current modification ('builtin cd "$*"') won't work with flags either, but
for a different reason - it'll try to interpret the whole sequence as a
flag.  So, to keep the quotes where they belong without inserting extra
ones, "$@" is the way to go.
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_		pechtcha@cs.nyu.edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor@watson.ibm.com
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

It took the computational power of three Commodore 64s to fly to the moon.
It takes a 486 to run Windows 95.  Something is wrong here. -- SC sig file


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list