Funny behavior with echo command in bash_login

Tim McDaniel tmcd@panix.com
Mon Aug 11 00:21:00 GMT 2008


On Mon, 11 Aug 2008, B'Joe <eco94h@gmail.com> wrote:
> This is my bash_login:
>
> echo Portable Cygwin v1.0.0.0 alpha
> echo ******************NOTE**********************
> echo Cygwin making modification in HKCU registry
> echo To completely clean Cygwin Portable
> echo installation run clean.bat in root directory
> echo ********************************************
>
>
> and this is what I get while login:
>
>
> Portable Cygwin v1.0.0.0 alpha
> ******************NOTE**********************
> Cygwin making modification in HKCU registry
> To completely clean Cygwin Portable
> installation run clean.bat in root directory
> Data Mail max_mem.c mbox msmtp.log procmail.log tmp
>
> Look at the last line, bash seen interpreted my echo command in last
> line as ls command, that not suppose to be.

It *is* supposed to be.  Unlike cmd on Windows, metacharacters like *
and ? and [...] are interpreted by bash.  *****...* is equivalent to
*, and * matches all the files in the current directory.

In general, quote your arguments.  Single-quote unless you want to do
variable interpolation ($abc), in which case double-quote.

echo 'Portable Cygwin v1.0.0.0 alpha'
echo '******************NOTE**********************'
echo 'Cygwin making modification in HKCU registry'
echo 'To completely clean Cygwin Portable'
echo 'installation run clean.bat in root directory'
echo '********************************************'

-- 
Tim McDaniel, tmcd@panix.com

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



More information about the Cygwin mailing list