scripting help

Steven W. Orr steveo at syslang.net
Fri Sep 29 18:43:47 UTC 2006


On Friday, Sep 29th 2006 at 19:31 +0100, quoth Tom Brown:

=>
=>> > if [ $EXITCODE -eq 0 ]; then
=>> >     echo "$OUTPUT" | grep -v CRITICAL
=>> >     [ $? -eq 1 ] && EXITCODE=2
=>> > fi
=>> > 
=>> > but when the script runs i get this
=>> > 
=>> > ../libexec/retrieve_custom_snmp: line 84: [: -eq: unary operator expected
=>> > "CRITICAL emcpowera has 2 dead, 2 alive"
=>> > 
=>> > can anyone help with this issue
=>> 
=>> What is $EXITCODE set to? How is it set?
=>
=>EXITCODE=`$SNMPWALK -v 1 -c $COMMUNITY $HOST $STATUS`
=>[ $DEBUG -gt 0 ] && echo "Retrieve exit code is $EXITCODE" >> $DEBUGFILE

You set the variable EXITCODE to the standard output of the SNMPWALK 
command. I have no idea what you want to do with the output but to check 
the exit status you want something like this:

$SNMPWALK -v 1 -c $COMMUNITY $HOST $STATUS
EXITCODE=$?

Also, do not use backquotes when you can use $( cmd ) instead.

output=$($SNMPWALK -v 1 -c $COMMUNITY $HOST $STATUS)




More information about the fedora-list mailing list