Help Needed in Grep Command


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Help Needed in Grep Command
# 1  
Old 09-10-2007
Help Needed in Grep Command

Hi

i am using grep command to search a string in a file and i am able to find that string in it ..

but moving forward once i find the string i need to remove the 5 lines above that and to remove 2 lines below it .. Just wanted to be clear there should be no lines existing which has a string coys11

Example :

file1.txt
cat435
gggte
werwr
coys11
ewrer

when i run this script , it should delete all the lines above it and lines below it

Thanks.. Please do help me on this .. Thanks again..!!
# 2  
Old 09-10-2007
Help Needed in Grep Command

Hi

i am using grep command to search a string in a file and i am able to find that string in it ..

but moving forward once i find the string i need to remove the 5 lines above that and to remove 2 lines below it .. Just wanted to be clear there should be no lines existing which has a string coys11

Example :

file1.txt
cat435
gggte
werwr
coys11
ewrer

when i run this script , it should delete all the lines above it and lines below it

Thanks.. Please do help me on this .. Thanks again..!!
# 3  
Old 09-10-2007
Hey
why dont you use sed ?
sed '/^[Cc]oys11/p' Filename

Hope this is what you want !!

Thanks !Smilie
# 4  
Old 09-10-2007
Quote:
Originally Posted by varungupta
Hey
why dont you use sed ?
sed '/^[Cc]oys11/p' Filename

Hope this is what you want !!

Thanks !Smilie
I thing this one removes not just "coys11" it removes all the line which inherits c,o,y,s,1.

if he just want to remove just coys11
grep -v -w joys11 inpufile is better. But I thing he wants something else
# 5  
Old 09-10-2007
let's say your file looks like this;
.
.
.
aa
bb
cc
dd
ee
ff
gg
hh
ii
jj
kk
.
.

and let's say your string is gg
do you want to remove bb-ii (including bb,gg,ii) ? if it is;

currentline=`grep -n string inputfile|awk ' {print $1} '`
let "startingline=$currentline-5"
let "finishingline=$currentline+2"

sed -n "$startingline,${finishingline}!s/.*/&/p" inputfile>outfile
# 6  
Old 09-10-2007
Hi

Thanks for the replies

Just wanted to be clear

lets assume i have a file1.txt which has the following

aaa
bbb
bbb
ccc
qqq
343
454
eee

i am looking for a string 343 once the script finds 343 it should delete 4 lines above it and 2 lines below it

the output file should be

qqq

Thanks
# 7  
Old 09-11-2007
is there any line before aaa and after eee in the file ?

if there is not than the code is;

let "currentline=`grep -n string inputfile|awk -F ':' {print $1} '`-1"
sed -n "${currentline}s/.*/&/p" inputfile>outfile

if there is. it is a bit harder .The code is ;

let "currentline=`grep -n string inputfile|awk -F ':' ' {print $1} '`-1"
let "fisrtpart=$currentline-5"
let "secondpart=$currentline+4"
sed -n "1,${firstpart}s/.*/&/p" inputfile>outfile
sed -n "${currentline}s/.*/&/p" inputfile>>outfile
sed -n "$secondpart,\$s/.*/&/p" inputfile>>outfile
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Grep command help needed

Hi All, I am looking for grep command to search the following in files of .cpp/.h of a directory and its sub-directories. 1. (char *) 2. (int *) 3. (float *) Like above pattern i need to search in all the files and list. I am using for example... for char*/const char* $egrep -Rwin... (2 Replies)
Discussion started by: vijaya_svk
2 Replies

2. UNIX for Advanced & Expert Users

Grep - Explanation needed.

grep -E '^(++){5}5000' <file_name> this command searches value 5000 in only 6th column from provided file where pipe ( | )is delimiter which separate columns... can some one plz explain me what '^(++){5}5000' actually does..? :confused: (1 Reply)
Discussion started by: Killer420
1 Replies

3. Shell Programming and Scripting

help needed with using grep in shell programming

Hi, im working on an assignment (airline ticketing system). im kinda having problems with the search function. i want users to be able to search by departure time or by flight. however, my output displays the whole chunk of data instead of what they are supposedly searching for. appreciate if... (1 Reply)
Discussion started by: crazybean
1 Replies

4. UNIX for Dummies Questions & Answers

Grep output help needed

According to linux hardening guide a PATH variable must not contain . or .. so i grep the path variable using. # echo $PATH | grep "." /usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin # echo $PATH | grep ".."... (2 Replies)
Discussion started by: pinga123
2 Replies

5. UNIX for Dummies Questions & Answers

dd command help needed.

Hi I m creating a file which will serve as a virtual harddisk . I m using following command to create a file. #dd if=/dev/zero of=/tmp/Sample.dat bs=1M count=1024 I have following doubts regarding the operation. 1) In above example i m creating a file with byte size of 1M .However in... (1 Reply)
Discussion started by: pinga123
1 Replies

6. UNIX for Dummies Questions & Answers

Help Needed with Grep

Hi all, I need some urgent help with grep. I'm simply trying to extract the current date from the syslog file, which is "Oct 6" and then grepping this and output the messages to a new log file. See the below commands and output, even though the log file is created, it is created with all the... (8 Replies)
Discussion started by: wthomas
8 Replies

7. Shell Programming and Scripting

Help Needed with grep & sed

On one of my servers, it appears that a bunch of html files got the following code added to it... I was going to try to remove this line using grep & sed... as sample grep -lr -e 'apples' *.html | xargs sed -i 's/apples/oranges/g' I can get the grep portion to work... grep "<script... (7 Replies)
Discussion started by: djlane
7 Replies

8. Shell Programming and Scripting

help needed in grep and copy

need help in a command. My requirement is that i m grepping the filename based on a pattern in .tar.gz file and then copying the file into some dir below is what exactly i want to achieve step 1: grep -l '30017A6800022D1A' CurrentCollectorMeterReadBackup20081007.tar.gz step 2: file found... (2 Replies)
Discussion started by: ali560045
2 Replies

9. UNIX for Dummies Questions & Answers

grep problem with the ^ symbol, help needed please.

Hello I am new to this forum and have been perplexed by this issue for the last hour of my life, I've tried to search everywhere for a solution to my syntax error, but here is my code. grep -wvnf 'noise.dat' sample.out | sort output: 4:Java Swing 5:Swing Java 6:Software Requirements... (2 Replies)
Discussion started by: Gvsumrb
2 Replies

10. UNIX for Dummies Questions & Answers

Help with tail /grep needed

Hello: I'm a very newbee at UNIX/AIX. What i want to do is to tail a file from the bottom until a certain string is found and write all the lines after the found string to another file. I've tried out a lot of combination with tail and grep but doesn't find the good one. Could someone help... (4 Replies)
Discussion started by: Felix2511
4 Replies
Login or Register to Ask a Question