faq: why doesn't tilde expansion work in shell scripts in cygwin?

Randall R Schulz rrschulz@cris.com
Sat Aug 24 18:42:00 GMT 2002


Dan,

Most likely, your scripts are being run with "/bin/sh," which in Cygwin is 
ASH, not CSH, TCSH, KSH or BASH and hence absent support for the "~" and 
"~user-name" syntaxes.

Assuming you're using a "shebang" (#!) header line in your scripts, you 
need to change them to use "/bin/bash" or /bin/tcsh," depending on which 
kind of syntax they're using (unless they're very simple and don't use any 
syntax or feature not in common to both these strains of shell).

Randall Schulz
Mountain View, CA USA


At 16:01 2002-08-24, Dan Kegel wrote:
In all my shell scripts, I'm having to replace ~ with $HOME to
get them to work under Cygwin.  Seems a bit odd.  Am I doing
something wrong?  This is with a fairly fresh installation
of Cygwin on Win2K.

Thanks,

Dan


More information about the Cygwin mailing list