On Mon, 9 May 2005, Eric Blake wrote: > According to John Morrison on 5/8/2005 1:52 AM: > > On Fri, March 25, 2005 8:26 pm, Eric Blake said: > > > >>True enough. And that points out another bug - echo "$0" may fail if $0 > >>starts with -, it should be echo -- "$0". Isn't portable shell > >>programming fun? > > > > Sorry that this has taken so long, but I'm just getting around to adding > > all the fixes emailed wrt /etc/profile. I tried the above, and it broke > > so I checked the man pages, > > Serves me right for thinking that echo was standard when I typed my > original message, rather than me actually testing at the command line. > Yes indeed, POSIX requires that echo must interpret -- as a string > operand, rather than the standard interpretation of being an argument > separator. > > > so, I'm afraid that echo -- "${0}" won't work. > > This will work instead: > case `printf %s "$0" | /usr/bin/tr '[:upper:]' '[:lower:]'` in > bash | -bash | */bash ) > [..]
Or, of course, the standard "portable scripting" trick: case "`echo "_$0" | /usr/bin/tr '[:upper:]' '[:lower:]'`" in _bash | _-bash | _*/bash ) [..] (or, if you don't mind a slightly longer command: case "`echo "_$0" | /usr/bin/tr '[:upper:]' '[:lower:]' | /usr/bin/sed '/s/^_//'`" in bash | -bash | */bash ) [..]) Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ [EMAIL PROTECTED] ZZZzz /,`.-'`' -. ;-;;,_ [EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "The Sun will pass between the Earth and the Moon tonight for a total Lunar eclipse..." -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT -- 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/