Hi, You are getting the error because you are using the wrong test for your variable. When doing math based comparisons you need to use switches like -ne for noot equals. Here are a few and what they mean: -ne not equals != -eq equals == -gt greater than > -lt less than < So here is your code with a couple modifications that will hopefully make it easier to understand: #!/bin/bash > #execute program > ./program.sh > #if program exited abormally will return a 1, usually returns 0 if completed successfully > if [ $? -eq 1 ] ; then > echo "returned 1" > fi > > HTH > Storm > -- Vinux Publicity Coordinator: http://www.vinuxproject.org/ Registered Linux user number 508465: https://linuxcounter.net/user/508465.html My blog, Thoughts of a Dragon: http://www.stormdragon.us/ Need a safe and easy way to backup and share files? Try Dropbox: http://db.tt/jeY50HR "Yeah my whole family done give up on me, and it makes me feel oh so bad. The only one who'll hang out with me is my dear ol' grand dad, and we drink alone." George Thorogood - I Drink Alone On Wed, 2012-03-28 at 23:45 -0700, Gregory Nowak wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hi folks, > > apologies for the off topic post, but I'm hoping someone can answer my > question. > > In a bash script, how do you deal with a program returning 0 in an if > statement? > Here's a script to illustrate what I mean > > #!/bin/sh > if [ `/bin/true || echo $?` = 1 ] ; then > echo "returned 1" > fi > > When I run this, I should just get the bash prompt back. When I run it > though, I get: > > [: 4: =: unexpected operator > > followed by the prompt. > I understand this happens because true exits with 0 status, and it > isn't echoed back, so the if statement compares nothing to 1. What I'd > like to know is how to get around that? Thanks in advance. > > Greg > > > - -- > web site: http://www.romuald.net.eu.org > gpg public key: http://www.romuald.net.eu.org/pubkey.asc > skype: gregn1 > (authorization required, add me to your contacts list first) > > - -- > Free domains: http://www.eu.org/ or mail dns-manager at EU.org > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (GNU/Linux) > > iEYEARECAAYFAk90BP0ACgkQ7s9z/XlyUyCQGACgxxLgwZEYcu5pvsscH4wVpBTH > JrQAnAyQjTipfY5mHCExzyq552b7n8Fc > =FT/Z > -----END PGP SIGNATURE----- > _______________________________________________ > Speakup mailing list > Speakup at braille.uwo.ca > http://speech.braille.uwo.ca/mailman/listinfo/speakup