Advaced Grep


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Advaced Grep
# 8  
Old 01-31-2006
Hi there again.
Having a little problem using the $? value to decided whether to execute further code.

Im using Grep as follows:

rsh vps-is1 -Cvps.1 p1 status | grep "(noa)"

If i then "echo $?" im getting an exit value of 0 wether it finds the string or not. I have changed the grep value to both strings that exist and done exist in the file and still get exit code of 0 from both,

Any ideas what im doing wrong???
# 9  
Old 01-31-2006
I believe you are seeing the return code from rsh and not your command. I believe thats just the way rsh works.

Try using ssh, it is capable of returning the result from the command it runs.

first with rsh

Code:
# > rsh sf1n04 ls /etc/hosts
/etc/hosts
# > echo $?
0

# > rsh sf1n04 ls /etc/host
ls: 0653-341 The file /etc/host does not exist.
# > echo $?
0

no with ssh

Code:
# > ssh sf1n04 ls /etc/hosts
/etc/hosts
# > echo $?
0

# > ssh sf1n04 ls /etc/host
ls: 0653-341 The file /etc/host does not exist.
# > echo $?
2

Notice when I misspell /etc/hosts I get a return code other than zero from ssh but not rsh.
# 10  
Old 01-31-2006
i get :

ssh: not found when i substitute rsh for ssh. I guess we dont have it on the box (im at work)...
# 11  
Old 01-31-2006
# 12  
Old 01-31-2006
I cant add tools to the box, would invalidate our support agreement with the supplier....

Is there any other way you can think of that i can check the line status (as per my code above) and execute additional code if i get a return status of "noa" without using the exit status of the grep command?
# 13  
Old 01-31-2006
Not sure if you get what you want...
Code:
rsh vps-is1 -Cvps.1 p1 status | { grep "(noa)" ; echo $? ; }

# 14  
Old 01-31-2006
seems to give the correct exit status now, why is that different from the previous code. Can you explain the syntax of the new code above for me please so i understand it properly?

Many thanks
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Inconsistent `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l`

i have this line of code that looks for the same file if it is currently running and returns the count. `ps -eaf -o args | grep -i sfs_pcard_load_file.ksh | grep -v grep | wc -l` basically it is assigned to a variable ISRUNNING=`ps -eaf -o args | grep -i sfs_pcard_load_file.ksh |... (6 Replies)
Discussion started by: wtolentino
6 Replies

2. UNIX for Dummies Questions & Answers

Piping grep into awk, read the next line using grep

Hi, I have a number of files containing the information below. """"" Fundallinfo 6.3950 14.9715 14.0482 """"" I would like to grep for Fundallinfo and use it to read the next line? I ideally would like to read the three numbers that follow in the next line and... (2 Replies)
Discussion started by: Paul Moghadam
2 Replies

3. Shell Programming and Scripting

Diff between grep .* file name and grep '.*' filename

Hi, Can anyone let me know what is difference between grep .* foo.c grep '.*' foo.c I am not able to understand what is exact difference. Thanks in advance (2 Replies)
Discussion started by: SasDutta
2 Replies

4. UNIX for Dummies Questions & Answers

Bash - CLI - grep - Passing result to grep through pipe

Hello. I want to get all modules which are loaded and which name are exactly 2 characters long and not more than 2 characters and begin with "nv" lsmod | (e)grep '^nv???????????? I want to get all modules which are loaded and which name begin with "nv" and are 2 to 7 characters long ... (1 Reply)
Discussion started by: jcdole
1 Replies

5. Shell Programming and Scripting

AWK/GREP: grep only lines starting with integer

I have an input file 12.4 1.72849432773174e+01 -7.74784188610632e+01 12.5 9.59432114416327e-01 -7.87018212757537e+01 15.6 5.20139995965960e-01 -5.61612429666624e+01 29.3 3.76696387248366e+00 -7.42896194101892e+01 32.1 1.86899877018077e+01 -7.56508762501408e+01 35 6.98857157014640e+00... (2 Replies)
Discussion started by: chrisjorg
2 Replies

6. UNIX for Dummies Questions & Answers

Advanced grep'in... grep for data next to static element.

I have a directory I need to grep which consists of numbered sub directories. The sub directory names change daily. A file resides in this main directory that shows which sub directories are FULL backups or INCREMENTAL backups. My goal is to grep the directory for the word "full" and then... (2 Replies)
Discussion started by: SysAdm2
2 Replies

7. Shell Programming and Scripting

grep for certain files using a file as input to grep and then move

Hi All, I need to grep few files which has words like the below in the file name , which i want to put it in a file and and grep for the files which contain these names and move it to a new directory , full file name -C20091210.1000-20091210.1100_SMGBSC3:1000... (2 Replies)
Discussion started by: anita07
2 Replies

8. UNIX for Dummies Questions & Answers

| help | unix | grep (GNU grep) 2.5.1 | advanced regex syntax

Hello, I'm working on unix with grep (GNU grep) 2.5.1. I'm going through some of the newer regex syntax using Regular Expression Reference - Advanced Syntax a guide. ls -aLl /bin | grep "\(x\)" Which works, just highlights 'x' where ever, when ever. I'm trying to to get (?:) to work but... (4 Replies)
Discussion started by: MykC
4 Replies

9. UNIX for Dummies Questions & Answers

| help | unix | grep - Can I use grep to return a string with exactly n matches?

Hello, I looking to use grep to return a string with exactly n matches. I'm building off this: ls -aLl /bin | grep '^.\{9\}x' | tr -s ' ' -rwxr-xr-x 1 root root 632816 Nov 25 2008 vi -rwxr-xr-x 1 root root 632816 Nov 25 2008 view -rwxr-xr-x 1 root root 16008 May 25 2008... (7 Replies)
Discussion started by: MykC
7 Replies

10. Shell Programming and Scripting

MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else

Hi Guys, I need to set the value of $7 to zero in case $7 is NULL. I've tried the below command but doesn't work. Any ideas. thanks guys. MEM=`ps v $PPID| grep -i db2 | grep -v grep| awk '{ if ( $7 ~ " " ) { print 0 } else { print $7}}' ` Harby. (4 Replies)
Discussion started by: hariza
4 Replies
Login or Register to Ask a Question