If/then/fi and variable


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers If/then/fi and variable
# 1  
Old 05-08-2011
If/then/fi and variable

Hi everyone,

I have a question. I have this script :

Code:
for f in *.faa
{
echo $f
nmb=0
num_occur_HVE=0
num_occur_REY=0
base=`basename $f .faa`
num_occur_HVE=`sed -n '/'"$base"'/p' LAL.vs.HVE.csv | awk 'BEGIN{FS=";"}{print $(NF-3)}'`
num_occur_REY=`sed -n '/'"$base"'/p' LAL.vs.REY.csv | awk 'BEGIN{FS=";"}{print $(NF-3)}'`
if [ $num_occur_HVE -eq 0 ]; then ( ((nmb++)); echo $nmb ) fi
if [ $num_occur_REY -eq 0 ]; then ( ((nmb++)); echo $nmb ) fi
echo $nmb
}

echo $nmb from INSIDE the IF/THEN/FI is the right one (1 or 2 or both)
echo $nmb from OUTSIDE the IF/THEN/FI is always 0 (so, the wrong one)

Obviously, I need the one outside the IF loop to be accurate...

I need the incrementation, because I want to know if the equality is found in one of my file or both (or none).

Any idea ?
Thank you !!!
# 2  
Old 05-08-2011
Hi.

From the bash man page:
Quote:
(list) list is executed in a subshell environment
Remove the outer brackets after then and before fi (and add a semi-colon):

Code:
if [ $num_occur_HVE -eq 0 ]; then ((nmb++)); echo $nmb; fi
if [ $num_occur_REY -eq 0 ]; then ((nmb++)); echo $nmb; fi

# 3  
Old 05-08-2011
Wonderful !
Thank you !
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Passing variable as input & storing output in other variable

I have a below syntax its working fine... var12=$(ps -ef | grep apache | awk '{print $2,$4}') Im getting expected output as below: printf "%b\n" "${VAR12}" dell 123 dell 456 dell 457 Now I wrote a while loop.. the output of VAR12 should be passed as input parameters to while loop and results... (5 Replies)
Discussion started by: sam@sam
5 Replies

2. Shell Programming and Scripting

[Solved] How to increment and add variable length numbers to a variable in a loop?

Hi All, I have a file which has hundred of records with fixed number of fields. In each record there is set of 8 characters which represent the duration of that activity. I want to sum up the duration present in all the records for a report. The problem is the duration changes per record so I... (5 Replies)
Discussion started by: danish0909
5 Replies

3. Red Hat

How to pass value of pwd as variable in SED to replace variable in a script file

Hi all, Hereby wish to have your advise for below: Main concept is I intend to get current directory of my script file. This script file will be copied to /etc/init.d. A string in this copy will be replaced with current directory value. Below is original script file: ... (6 Replies)
Discussion started by: cielle
6 Replies

4. Shell Programming and Scripting

Variable not found error for a variable which is returned from stored procedure

can anyone please help me with this: i have written a shell script and a stored procedure which has one OUT parameter. now i want to use that out parameter as an input to the unix script but i am getting an error as variable not found. below are the unix scripts and stored procedure... ... (4 Replies)
Discussion started by: swap21783
4 Replies

5. Shell Programming and Scripting

Not able to store command inside a shell variable, and run the variable

Hi, I am trying to do the following thing var='date' $var Above command substitutes date for and in turn runs the date command and i am getting the todays date value. I am trying to do the same thing as following, but facing some problems, unique_host_pro="sed -e ' /#/d'... (3 Replies)
Discussion started by: gvinayagam
3 Replies

6. Shell Programming and Scripting

Split variable length and variable format CSV file

Dear all, I have basic knowledge of Unix script and her I am trying to process variable length and variable format CSV file. The file length will depend on the numbers of Earnings/Deductions/Direct Deposits. And The format will depend on whether it is Earnings/Deductions or Direct Deposits... (2 Replies)
Discussion started by: chechun
2 Replies

7. Shell Programming and Scripting

How to define a variable with variable definition is stored in a variable?

Hi all, I have a variable say var1 (output from somewhere, which I can't change)which store something like this: echo $var1 name=fred age=25 address="123 abc" password=pass1234 how can I make the variable $name, $age, $address and $password contain the info? I mean do this in a... (1 Reply)
Discussion started by: freddy1228
1 Replies

8. Shell Programming and Scripting

Insert a line including Variable & Carriage Return / sed command as Variable

I want to instert Category:XXXXX into the 2. line something like this should work, but I have somewhere the wrong sytanx. something with the linebreak goes wrong: sed "2i\\${n}Category:$cat\n" Sample: Titel Blahh Blahh abllk sdhsd sjdhf Blahh Blah Blahh Blahh Should look like... (2 Replies)
Discussion started by: lowmaster
2 Replies

9. Shell Programming and Scripting

Sed variable substitution when variable constructed of a directory path

Hello, i have another sed question.. I'm trying to do variable substition with sed and i'm running into a problem. my var1 is a string constructed like this: filename1 filerev1 filepath1 my var2 is another string constructed like this: filename2 filerev2 filepath2 when i do... (2 Replies)
Discussion started by: alrinno
2 Replies

10. Shell Programming and Scripting

ksh: A part of variable A's name is inside of variable B, how to update A?

This is what I tried: vara=${varb}_count (( vara += 1 )) Thanks for help (4 Replies)
Discussion started by: pa3be
4 Replies
Login or Register to Ask a Question