if statement


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting if statement
# 1  
Old 03-07-2008
if statement

I am having problem writing the following script, this is more like a boolean case where i need to check for existance of a string in a file and if it exist i have to do certain things.

If ( such string exist in a file)

sed 's/car/bus/g' file

else

do something else.
# 2  
Old 03-07-2008
To check for the existance of a string in a file you can use grep.

Code:
grep "string" file

Read the man page of grep

Regards
# 3  
Old 03-07-2008
I dunno how I can ask this question. It seems like that I am not expressing my question correctly becuz i am not getting anything related to my question. I am not having problem with searching a string. I don't know how to use that output for if statement. lets say i do GREP STRING FILENAME this would give me either an output or nothing. I want to use this output as a condition to do my if statement but i dunno how to go about using this output. i mean what i have to use in order to get a condition out of this.

lets say we use
If ["$A" lt 0]; then .... but in my case i dunno what exactly i have to use for GREP SRTING FILENAME to see if this actually gives an output or it is NULL

I want something like If( GREP STRING FILENAME give me an output) do the following......

I hope someone has an answer for me
Thanks
# 4  
Old 03-07-2008
Quote:
Originally Posted by ROOZ
I dunno how I can ask this question. It seems like that I am not expressing my question correctly becuz i am not getting anything related to my question. I am not having problem with searching a string. I don't know how to use that output for if statement. lets say i do GREP STRING FILENAME this would give me either an output or nothing. I want to use this output as a condition to do my if statement but i dunno how to go about using this output. i mean what i have to use in order to[INDENT]get a condition out of this.

lets say we use
If ["$A" lt 0]; then .... but in my case i dunno what exactly i have to use for GREP SRTING FILENAME to see if this actually gives an output or it is NULL

I want something like If( GREP STRING FILENAME give me an output) do the following......

I hope someone has an answer for me
Thanks


Code:
#! /bin/ksh

str='grep 'string' filename | wc -l'
if (($str >= 1)); then
     sed 's/car/bus/g' file
else
     exit 0
fi


Last edited by ilak1008; 03-07-2008 at 04:23 PM.. Reason: Variable
# 5  
Old 03-07-2008
Thx for the quick response. it is exactly what I was looking for.
# 6  
Old 11-05-2008
The 'if ' better (I believe ti was desighned for that usage) to use in that way:
Code:
if grep $str $file_name &>/dev/null; then ...; ...; else ...; ...; fi;

The if acting on return code from command ('grep' here) - (return in shell could be checked by '$?' right after execution a command.)

The '&>/dev/null' part redirect any returns or/and error infor into nowhere, as the result is not interesting here, but only return code
# 7  
Old 11-05-2008
Quote:
Originally Posted by ilak1008
Code:
#! /bin/ksh

str='grep 'string' filename | wc -l'


First, you don't need wc.

Second, those should be backticks, not apostrophes:

Code:
str=`grep -c 'string' filename`

Quote:
Code:
if (($str >= 1)); then


You can do exactly the same thing using the standard syntax:

Code:
if [ $str -ge 1 ]; then

Quote:
Code:
     sed 's/car/bus/g' file
else
     exit 0
fi

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert Update statement into Insert statement in UNIX using awk, sed....

Hi folks, I have a scenario to convert the update statements into insert statements using shell script (awk, sed...) or in database using regex. I have a bunch of update statements with all columns in a file which I need to convert into insert statements. UPDATE TABLE_A SET COL1=1 WHERE... (0 Replies)
Discussion started by: dev123
0 Replies

2. Shell Programming and Scripting

If statement

Hi, I have this code here. Its suppose to do something when certain condition is met, I'm pretty sure at least one of the condition will be meet somewhere in the loop but it always go to else part of the script. Is something wrong on this script? age_list=`tar -tvf /home/dir/$tarfile... (4 Replies)
Discussion started by: erin00
4 Replies

3. Shell Programming and Scripting

Statement

${PFILE}.backupfile Please tell me what the above statement means? (1 Reply)
Discussion started by: lg123
1 Replies

4. Shell Programming and Scripting

If statement help

I'm trying to create a script that would allow me to identify the sucessful removal of a file. Here's what i put together so far, let me know if it's correct or not. FILE_NAME="cactus.dat" FILE_FIND='find / -name $FILE_NAME' if ;then echo "cactus.dat was not removed successfully" ... (3 Replies)
Discussion started by: sdpinoy
3 Replies

5. UNIX for Dummies Questions & Answers

If statement (yes or no)

I have the program: #!/bin/ksh echo Please enter yes or no read n typeset -l n if ] then echo My name exit else echo delete my name fi Question: How can I make the program accept only the word "yes" or "no" otherwise it will ask the user to re-enter? Thanks! (7 Replies)
Discussion started by: bobo
7 Replies

6. Shell Programming and Scripting

How is use sselect statement o/p in insert statement.

Hi All, I am using Unix ksh script. I need to insert values to a table using the o/p from a slelect statement. Can anybody Help! My script looks like tihs. ---`sqlplus -s username/password@SID << EOF set heading off set feedback off set pages 0 insert into ${TB_NAME}_D... (2 Replies)
Discussion started by: nkosaraju
2 Replies

7. Shell Programming and Scripting

If statement - How to write a null statement

In my ksh script, if the conditions of a if statement are true, then do nothing; otherwise, execute some commands. How do I write the "do nothing" statement in the following example? Example: if (( "$x"="1" && "$y"="a" && "$z"="happy" )) then do nothing else command command fi... (3 Replies)
Discussion started by: april
3 Replies

8. Shell Programming and Scripting

statement

I want to write a program that would convert yard to feet and feet to yard. i.e 1 yard = 3 * feet Echo "enter a" read a expr a *3 The trick is that I want to give the user some options. After the conversion from yard to feet is done, I want to ask the user whether or not he/she wants to... (10 Replies)
Discussion started by: Ernst
10 Replies

9. Shell Programming and Scripting

if statement

can someone please tell me what is wrong with the below. i'm trying to get a script to run if the content of a variable is either small letter y or capital letter Y. if then whatever fi (4 Replies)
Discussion started by: Terrible
4 Replies

10. Shell Programming and Scripting

If statement

Hi, I have a statement in shell script which i am writing below: if ] then ..... What is the meaning of -a option in files, meaning of the statement in the if condition ] means. Thanks (3 Replies)
Discussion started by: dreams5617
3 Replies
Login or Register to Ask a Question