Date: Tue, 14 Aug 2001 20:28:30 -0400 From: 'parv' <parv_@yahoo.com> To: Drew Tomlinson <drewt@writeme.com> Cc: "'FreeBSD Questions (E-mail)'" <freebsd-questions@FreeBSD.org> Subject: Re: Shell Script Help - Comparing Strings Message-ID: <20010814202830.A67894@moo.holy.cow> In-Reply-To: <5CD46247635BD511B6B100A0CC3F023925A06B@ldcmsx01.lc.ca.gov>; from drewt@writeme.com on Tue, Aug 14, 2001 at 04:53:43PM -0700 References: <5CD46247635BD511B6B100A0CC3F0239E342B5@ldcmsx01.lc.ca.gov> <5CD46247635BD511B6B100A0CC3F023925A06B@ldcmsx01.lc.ca.gov>
next in thread | previous in thread | raw e-mail | index | archive | help
this was, on the fateful occasion around Aug 14 19:53 -0400, sent by Drew Tomlinson > > > -----Original Message----- > > From: parv [mailto:parv_@yahoo.com] > > Sent: Tuesday, August 14, 2001 4:12 PM > > To: Drew Tomlinson > > Cc: FreeBSD Questions (E-mail) > > Subject: Re: Shell Script Help - Comparing Strings > > > > ... > > you need to add spaces between test operators... > > > > if [ "$1"="" ] # notice the difference > > then > > $1="www" > > fi > > I see but this didn't work for me either. This is what I get. > > if [ "$1"=="" ] #Tried with both single and double "=" > then $1="www" > fi > + [ test== ] > + test=www > test=www: not found > > Another poster explained that "=" sets a value but "==" should be used for > comparing strings. I tried it both ways but got the same error. believe it or not, that's progress. error is not in the if condition but in the variable assignment. you shouldn't have a '$' in there. i missed it first time around... guess i was not thinking deep... now, if you remove '$', then you will still get another error; there may be a some way to assign a value to a positional parameter, but in your case, work isn't worth it. instead of assigning something to $1, use a letter/word variable like shown below. > > ...but i would test the number of arguments, and set a non positional > > variable instead... > > > > case $# in > > 0) > > suffix=www > > ;; > > > > *) > > suffix=$1 > > ;; > > esac > > > > ...but still better alternative, would be... > > > > suffix=${1:-www} > > This is stuff I don't understand but thank you for sharing! btw, another way to write that if condition... if [ -z "$1"] # true if length is zero then ... fi you should take a look at test(1) and sh(1). -- so, do you like word games or scrabble? - parv To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010814202830.A67894>