Variable not set correctly in bash

Brian Dessent brian@dessent.net
Wed Apr 13 06:54:00 GMT 2005


Andre Dieball wrote:

>                 NEW=$[ $OLD + 1 ]

That construct is a bash extension that is not part of the regular
bourne shell capability.  On linux, /bin/sh is bash, so it works.  On
Cygwin, /bin/sh is ash which is a more basic bourne shell that does not
have all the extra extensions that bash has.  In other words, by doing
that you're limiting your script to only work on bash.  You can either
change the shebang to explicitly call bash, or use a more portable
construct, such as

NEW=`expr $OLD + 1`

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/



More information about the Cygwin mailing list