Sponsored Content
Top Forums Shell Programming and Scripting Please help on IF statements. Post 302127401 by filthymonk on Tuesday 17th of July 2007 11:20:41 PM
Old 07-18-2007
Please help on IF statements.

I had different problem scenarios with IF statement. Can any expert please enlighten me on the difference with these scenarios. Thank you.

1st Scenario:

Code:
testdate=`date +%Y%m`
test=`cat /var/log/database0.$testdate*.log | grep "Errors found during processing" | tail -10`
if [ -z $test ]
then
        echo "No Error" >> $$.tmp
else
        echo "Error Found" >> $$.tmp
        cat /var/log/database0.$testdate*.log | grep "No files found for processing" | tail -10 >> $$.tmp
        echo " " >> $$.tmp
fi

Anyone knows why will the below error occur when i run the script above?

./test.sh: test: argument expected

2nd Scenario:

Code:
test=`cat /var/log/database0*.log | grep "Errors found during processing" | tail -10`
if [ -z $test ]
then
        echo "No Error" >> $$.tmp
else
        echo "Error Found" >> $$.tmp
        cat /var/log/database0.$testdate*.log | grep "No files found for processing" | tail -10 >> $$.tmp
        echo " " >> $$.tmp
fi

For the above code it will work.

3rd Scenario:

Code:
test=`grep error /var/log/database0*.log | tail -10`
if [ -z $test ]
then
        echo "No Error" >> $$.tmp
else
        echo "Error Found" >> $$.tmp
        cat /var/log/database0.$testdate*.log | grep "No files found for processing" | tail -10 >> $$.tmp
        echo " " >> $$.tmp
fi

The above code don't work and after i change it to the one below it works.

Code:
test=`grep error /var/log/database0*.log | tail -10`
if [ $test=" " ]
then
        echo "No Error" >> $$.tmp
else
        echo "Error Found" >> $$.tmp
        cat /var/log/database0.$testdate*.log | grep "No files found for processing" | tail -10 >> $$.tmp
        echo " " >> $$.tmp
fi

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

if statements

I am trying to change this : Albert Einstein 52 Peter Scott 22 Hilary Smith 48 Joan Bakewell 30 Catherine Maguire 26 into Albert Einstein Pass Peter Scott Fail Hilary Smith Pass Joan Bakewell Fail Catherine Maguire Fail I have to use a if statement that says: if field 3 is... (2 Replies)
Discussion started by: lilas
2 Replies

2. UNIX for Advanced & Expert Users

if statements

This is for a program I have to do to calculate the day of the week. I need to write an if statement that will do the following: if day is 29 and year is odd, don't calculate dayif ( day == 29 && year == ??? )I know how to do it for the day but I don't know how to do it for the year. (4 Replies)
Discussion started by: pwanda
4 Replies

3. Shell Programming and Scripting

HELP!! if statements

I am kind of new in Unix and i have to make a menu. I want to put an if statement in the menu. you should enter the filename and it goes to that file. How do i do this? (1 Reply)
Discussion started by: trob
1 Replies

4. UNIX for Dummies Questions & Answers

Help with For Statements

Hi, I am trying to write a for statement that will allow for the ps, who, finger, and date commands to run. Can anyone help? I use Putty. (22 Replies)
Discussion started by: lexydoll87
22 Replies

5. Shell Programming and Scripting

If statements....

Good morning all! I want to know if Im interpreting this if statement below right. if(((1) || (0)) && (1)){ do stuff; } This is saying: if true piped into false, then true, then do stuff. Right? What does the && stand for? thanks in advance! ben (3 Replies)
Discussion started by: bigben1220
3 Replies

6. Shell Programming and Scripting

Help with IF statements

I am writing a script that does a search for a argument in a file and lists all like occurrences. The script verifies that it is a file and then runs another script that list the lines. My problem is that I need the script to accept a file or a directory and then go to that directory check all... (1 Reply)
Discussion started by: zero3ree
1 Replies

7. Shell Programming and Scripting

vi and if statements

Hi I am very new to Unix programming and shell scripting. I am trying t figure out how to write a little script that will output the number of directories. I can find the number of directories using ls -l | grep "^d" | wc -l I can not figure out how to do it so when I type the name... (8 Replies)
Discussion started by: Reddoug
8 Replies

8. Shell Programming and Scripting

Using While and If statements

Hi guys, Two problems I need solving please. I created a script where the user types in 7 numbers as standard input and each one is then stored in an array. Now I need to perform the following calculations on those numbers: 1) Use a while loop to determine the largest number in the range. ... (2 Replies)
Discussion started by: jjb1989
2 Replies

9. Homework & Coursework Questions

Using While and If statements

1. The problem statement, all variables and given/known data: Two problems I need solving please. I created a script where the user types in 7 numbers as standard input and each one is then stored in an array. Now I need to perform the following calculations on those numbers: 1) Use a while... (11 Replies)
Discussion started by: jjb1989
11 Replies

10. UNIX for Dummies Questions & Answers

if and then statements

I came across a bash script that outputs the forecast for the day and the max temperature but at the end of the day the max temperature disappears ($6) and I am left with "°C" after the forecast. Here is the script: #! /bin/bash curl -s --connect-timeout 30... (7 Replies)
Discussion started by: _light_
7 Replies
Test::BDD::Cucumber::StepContext(3pm)			User Contributed Perl Documentation		     Test::BDD::Cucumber::StepContext(3pm)

NAME
Test::BDD::Cucumber::StepContext - Data made available to step definitions VERSION
version 0.11 DESCRIPTION
The coderefs in Step Definitions have a single argument passed to them, a "Test::BDD::Cucumber::StepContext" object. This is an attribute- only class, populated by Test::BDD::Cucumber::Executor. ATTRIBUTES
data Step-specific data. Will either be a text string in the case of a """ string, or an arrayref of hashrefs if the step had an associated table. stash A hash of hashes, containing three keys, "feature", "scenario" and "step". The stash allows you to persist data across features, scenarios, or steps (although the latter is there for completeness, rather than having any useful function). feature scenario step Links to the Test::BDD::Cucumber::Model::Feature, Test::BDD::Cucumber::Model::Scenario, and Test::BDD::Cucumber::Model::Step objects respectively. verb The lower-cased verb a Step Definition was called with. text The text of the step, minus the verb. Placeholders will have already been multiplied out at this point. harness The Test::BDD::Cucumber::Harness harness being used by the executor. matches Any matches caught by the Step Definition's regex. These are also available as $1, $2 etc as appropriate. METHODS
background Boolean for "is this step being run as part of the background section?". Currently implemented by asking the linked Scenario object... AUTHOR
Peter Sergeant "pete@clueball.com" LICENSE
Copyright 2011, Peter Sergeant; Licensed under the same terms as Perl perl v5.14.2 2012-05-20 Test::BDD::Cucumber::StepContext(3pm)
All times are GMT -4. The time now is 10:05 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy