[CODE]
eval $lgrep $SAM_CMD ; if [ $? -eq 0 ] ; then echo "No Error" ; fi
change to
eval $lgrep $SAM_CMD ; rslt=$? ; if [ "$rslt." = "0." ]; then echo "No Error"; fi
Last edited by aix-guy; 01-28-2011 at 03:25 PM..
Reason: missed the period ofert the 0
The original error message came from the extra semi-colon after "then".
Please post all relevant parts of the script, or the whole script.
Please post the command and the lines which set the variables.
It think I get your logic but I can't think of a simple grep which would return exit status zero when it doesn't find something. Obviously "grep -v" is irrelevant in this context.
Btw. If this is commercial code it is rarely ever necessary or desirable to use "eval".
In portable Shell scripts I have seen commands like echo executed as ECHO where ECHO is a function which decides which syntax to use.
You can do the conditional test as follows
. I'm not sure what you're doing with the first part but this code here reads "Test exit status to be not equal to 0 and if that evaluates to true, echo 'No Error'. I prefer the conditional test like above as opposed to if statements. Keeps code cleaner imho.
&& says do this code if the code to the left is true. || says do this if it fails or is not true. Good for one liners instead of worrying about if then syntax. Hope that helps a little for the future :-)
Last edited by DC Slick; 01-28-2011 at 03:55 PM..
Reason: further explaination
If you could tell us what $lgrep and $SAM_CMD represent that would help so much. Give us an example of what those variable values are. That's what aix-guy means by expand the variables. With the test [ "$?" -ne 0 ] && echo "No Error" you don't need the IF. So
is all you need.
Hi all
Unix newbie - please be gentle
Am modifying an existing script to error trap a variable with a length of 0
#!/bin/bash
ipfile='/var/data/bin/ipaddress'
] && ipold="$(< "$ipfile" )"
ipnew="$( wget -q -O - checkip.dyndns.org | sed -e 's/.*Current IP Address: //;s/<.*$//' )"
#... (6 Replies)
HI
My doubt may be basic one but I need to get it clarified..
When i use "if" condition that checks for many AND, OR logical conditions
like
if ]; then
return 0
fi
Even the if condition fails it returns as zero.. Any clue..
But if i add else condition like
if ]; ... (2 Replies)
hi,
I have some problems in my simple script about the redirect echo stdout command inside a condition. Why is the echo command inside the elif still execute in the else command
Here are my simple script
After check on the two diff output the echo stdout redirect is present in two diff... (3 Replies)
Executed the following if conditions .. and got different results .
only (( )) gave correct o/p with all scenarios .
Can anybody please let me know what is the difference between and ] and ((condition)) when used with if condition.
And why each condition gave different result.
1.... (2 Replies)
Hi
I have to evaluate multiple conditions with an 'or'.
Here is an example:
if
when i use the above i get a error message
'
Please help me to know if i am missing something in the syntax.
how do i achieve multiple "or" in the same if condition.
Thanks. (11 Replies)
i have a paramter data_date in which i am passing a string value.i want to find out another paramter file_date from this.the logic is given below
if day of data_date = sunday or monday
then
file_date=data_date-1
else
file_date=data_date-2
i am passing data_date as 20061027.
how can i... (3 Replies)
Hi friends, :)
In a shell script i found the following if condition.
echo -n "Which version of $1 do you want to restore ('0' to quit)? : "
read desired
if ${desired:=1} -ge $index ] ; then
echo "$0: Restore canceled by user: index value too big." >&2
exit 1
fi
Can... (1 Reply)