Condition checking issue while if


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Condition checking issue while if
# 1  
Old 07-19-2013
Condition checking issue while if

hi,

i am using a simple condition
Code:
end_ct=`sqlplus -s $ORACLE_USER/$ORACLE_PASS@$ORACLE_SID   << EOF
                select description from bravo_statistics
                where trunc(time_stamp)=trunc(sysdate)-1
                and description='END CAT';
EOF`
echo $end_ct;

echo $emtr_cnt;
if [$end_ct=="END CAT"]; then
echo "end_cat"
else
echo "value not found"
fi

then i am getting following error message :
bravo_main_refresh.sh: test: ] missing

i exactly don't know what is missing here. please present you views on this.
# 2  
Old 07-19-2013
Spaces are important in this syntax. Please change the if condition as below.

Code:
if [ $end_ct = "END CAT" ];

# 3  
Old 07-19-2013
after changing the condition to
Code:
if [ $end_ct = "END CAT" ]; then

it is now throwing below error:
bravo_main_refresh.sh: test: unknown operator ----------
# 4  
Old 07-19-2013
Quote:
Originally Posted by lovelysethii
after changing the condition to
Code:
if [ $end_ct = "END CAT" ]; then

it is now throwing below error:
bravo_main_refresh.sh: test: unknown operator ----------
Since the expansion of $end_ct also contains whitespace characters, you need to quote it. Try:
Code:
if [ "$end_ct" = "END CAT" ]; then

# 5  
Old 07-19-2013
thanks, now atleast i am not getting white space error, but it is not actually meeting the given value.

Code:
if [ "$end_ct" = "END CAT" ]; then
echo $end_ct
else
echo "value not found"
fi


i have echo'ed the value from the select statement and it is "END CAT" only but while checking condition it is falling to the else condition rather . please suggest.

Moderator's Comments:
Mod Comment Please use CODE tags when showing sample code, input, and output.

Last edited by Don Cragun; 07-19-2013 at 05:16 AM.. Reason: CODE tags
# 6  
Old 07-19-2013
Quote:
Originally Posted by lovelysethii
thanks, now atleast i am not getting white space error, but it is not actually meeting the given value.

Code:
if [ "$end_ct" = "END CAT" ]; then
echo $end_ct
else
echo "value not found"
fi


i have echo'ed the value from the select statement and it is "END CAT" only but while checking condition it is falling to the else condition rather . please suggest.

Moderator's Comments:
Mod Comment Please use CODE tags when showing sample code, input, and output.
Please show us the exact output you get from:
Code:
set -xv
if [ "$end_ct" = "END CAT" ]; then
echo "X${end_ct}X"
else
echo "value not found"
fi
set +xv

# 7  
Old 07-19-2013
well my first condition is working now, but i have to add 1 more condition into this if statement.

Code:
if [ "$end_ct" -eq "END CAT" ] && [ "$emtr_cnt" = 1 ]; then
  echo $end_ct
else
  echo "value not found"
fi


but same thing i can see here, again it is going to else condition.

Last edited by Scott; 07-19-2013 at 07:04 AM.. Reason: Code tags, PLEASE!
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Checking for null condition in a UNIX variable

i have this code for i in `cat sql_output.txt` do -- some script commands done sql_output.txt has 1 column with employee_ids If the sql_output.txt is null then the do loop should not execute. How can i implement this. for i in `cat sql_output.txt` If i is null or empty then ... (5 Replies)
Discussion started by: rafa_fed2
5 Replies

2. Shell Programming and Scripting

Condition checking in UNIX

i have a script where i have to find the age of a file, if then echo "dnb file is present for the monthly load" >> $RUNLOG dnb="1" else echo "dnb file has not arrived yet" > $ERRLOG dnb="0" fi i know the file is available so... (3 Replies)
Discussion started by: lovelysethii
3 Replies

3. Shell Programming and Scripting

Checking file existence along with condition

Hi am trying to write a script which find the existence of a file from a find command output and perform a task if the file exists. Help me out with the correct syntax . Am trying with the following one but unable to get the output. if then <some tasks> else echo "file not exists" fi (5 Replies)
Discussion started by: rogerben
5 Replies

4. Shell Programming and Scripting

Multiple condition checking in bash

Hi All, I am trying to check if two variables have value assigned to it. i am doing it like if ] then echo "Please specify either single hostname or host file for the report" usage exit fi But its not working for it.Even i specify values for both variables it dont go... (6 Replies)
Discussion started by: kailash19
6 Replies

5. Shell Programming and Scripting

create separate file after checking condition..

Problem : I want to create a separate file for country list if condition is true. Please help. ***************************************************** Input file: SV-INCR-139302-365540488-201104090934.sqllog SV-INCR-1082-552793184-201104040805.sqllog SV-INCR-1077-855045741-201104040805.sqllog... (4 Replies)
Discussion started by: humaemo
4 Replies

6. Shell Programming and Scripting

Cutting specific line of a file by checking condition

testfile.csv 0","1125209",,"689202CBx18888",,"49",,,"NONMC",,,,,"01112010",,,,,,,"MTM- "1","",,"689202ABx19005",,"49",,,"NONMC",,,,,"01072010",,,,,,,"MTM- testfile.csv looks like above format if the second column is null then get 23rd column and store in a different varible .. add all the... (1 Reply)
Discussion started by: mgant
1 Replies

7. Shell Programming and Scripting

Unzip file By checking condition.

Hi.. Gurus I Have a list of .zip files in a directory. I want to check whether each .zip file having some particular file or not (say .jsp) if it's having .Jsp file then create a directory as per the .zip file and extract the content to that directory except the .jsp file, If .zip not having... (3 Replies)
Discussion started by: posix
3 Replies

8. Shell Programming and Scripting

sed solution for condition checking

Hi all , Recently i came across this in FAQ's. I have a file cat rem.txt sreedhar 20 sreedhar 10 sreedhar 15 sreedhar 18 sreedhar 16 sreedhar 30 I have to replace sreedhar with "Sridhar" if the second parameter is > 18. I need to do it in "sed" only. I am wondering how this... (4 Replies)
Discussion started by: panyam
4 Replies

9. Shell Programming and Scripting

Checking condition inside the loop

Hi all, I have one clarification i am using the loop which will process for each record .suppose there is f ailure in the first record it need to send mail and process the next .my code: defcount=`cat <filename>|wc -l` while ] do if <some condiotion> then echo "mail" fi done so... (1 Reply)
Discussion started by: ithirak17
1 Replies

10. Shell Programming and Scripting

Condition checking

Dear all That's another problem from me, i wanna do a lot of if statement checking for correct input by user, will be prompt input again if the input not meet the requirement defined by If or while statement... like this one .... while I know it's less effiency write the program... (14 Replies)
Discussion started by: trynew
14 Replies
Login or Register to Ask a Question