searching and editing file contents


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting searching and editing file contents
# 1  
Old 02-05-2008
searching and editing file contents

Can you please help me to edit parts of a file and write into a new file.
=====================================
Suppose I have a huge data dump in a file I need to search for a tag in that and cut few lines around that tag in the file. Is there a way to keep track of line numbers and operate on the file.

I can explain with example.
I have this file AAA
-----AAA------
Start:
name:1111
date:222
id:3333
address:12444
end
Start:
name:5555
date:3312
id:6666
address:qwds
end
Start:
name:7777
date:9090
id:4571
address:abc444
end
----------------
ID is unique for each start-end block in above file.
In above file, I need to search for a ID, say 4571 and just extract the block Start-End having details about id:4571
expected output is:
name:7777
date:9090
id:4571
address:abc444

can you please suggest how I can go about getting the necessary data from AAA given a ID as input?

Last edited by jayana; 02-05-2008 at 10:05 PM..
# 2  
Old 02-05-2008
Code:
$ cat AAA
Start:
name:1111
date:222
id:3333
address:12444
end
Start:
name:5555
date:3312
id:6666
address:qwds
end
Start:
name:7777
date:9090
id:4571
address:abc444
end
$
$
$
$ cat srch.sh
#!/usr/bin/ksh

idval=$1
fn=$2
[ -z "${idval}" ] && exit 1
[ ! -s "${fn}" ] && exit 2
ln=`grep -n "^id:${idval}$" $fn |cut -d":" -f1`
st=$(( ln - 2))
to=$(( ln + 1))
sed -ne "${st},${to}p" AAA
$
$
$ ./srch.sh 4571 AAA
name:7777
date:9090
id:4571
address:abc444

HTH
# 3  
Old 02-05-2008
Code:
grep -A 1 -B 2 'id:4571' file.txt

# 4  
Old 02-05-2008
Context options in grep are not universal. e.g. the -A / -B options won't work on solaris grep.
# 5  
Old 02-05-2008
Quote:
Originally Posted by rikxik
Context options in grep are not universal. e.g. the -A / -B options won't work on solaris grep.
There is no comment regarding the OS.
# 6  
Old 02-05-2008
Quote:
Originally Posted by mirusnet
There is no comment regarding the OS.
Well, doesn't hurt to have a "more-compatible" solution!
# 7  
Old 02-05-2008
Краткость сестра таланта.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Searching the pattern and accordingly changing the contents using shell

HI, I have File1 which contains :- admins = anand,satheesha,user1,user2,user3,user4,user5,user10,vishal nonadmins = read-only @admins = rw @nonadmins = r One shell script, using that I want to change the File1 as per user input (let's say $1) which have value as 'John', so now I want to... (6 Replies)
Discussion started by: Vishal Mishra
6 Replies

2. Shell Programming and Scripting

Folder contents getting appended as strings while redirecting file contents to a variable

Hi one of the output of the command is as below # sed -n "/CCM-ResourceHealthCheck:/,/---------/{/CCM-ResourceHealthCheck:/d;/---------/d;p;}" Automation.OutputZ$zoneCounter | sed 's/$/<br>/' Resource List : <br> *************************** 1. row ***************************<br> ... (2 Replies)
Discussion started by: vivek d r
2 Replies

3. Shell Programming and Scripting

Problem with the awk in searching the contents in a file

Hello all, I am a newbie in awk. I am struggling in this problem for a long.Actually I have two files, filea and fileb. File a is actually a search key through it I have to find the corresponding japanese tag from file b. filea contains the data like this: sm982882 sm1893548 sm2420025... (3 Replies)
Discussion started by: csim_mohan
3 Replies

4. Shell Programming and Scripting

Replace partial contents of file with contents read from other file

Hi, I am facing issue while reading data from a file in UNIX. my requirement is to compare two files and for the text pattern matching in the 1st file, replace the contents in second file by the contents of first file from start to the end and write the contents to thrid file. i am able to... (2 Replies)
Discussion started by: seeki
2 Replies

5. Shell Programming and Scripting

searching a file with a specified text without using conventional file searching commands

without using conventional file searching commands like find etc, is it possible to locate a file if i just know that the file that i'm searching for contains a particular text like "Hello world" or something? (5 Replies)
Discussion started by: arindamlive
5 Replies

6. Shell Programming and Scripting

Help in searching a particular string in a file name (not inside the file contents)

Dear Unix Gurus, I am new to shell scripting and in the process of learing. I am trying to find whether a file name has today's date in MMDDYYYY format. I am using the following code and it doesn't seem like working. #!/usr/bin/ksh today=$(date '+%m%d%Y') echo today: $today file=`find... (4 Replies)
Discussion started by: shankar1dada
4 Replies

7. Shell Programming and Scripting

Problem with searching and then editing a file through shell.

Hi, I have searched through this forum as there are many similar entries but could'nt get one of them to work, either that or they were just different to what I needed. Basically I have a file, recordsDatabase. In this file are a few different fields. There is a unique identifier eg 001... (5 Replies)
Discussion started by: U_C_Dispatj
5 Replies

8. UNIX for Dummies Questions & Answers

Help with searching for a file in a directory and copying the contents of that file in a new file

Hi guys, I am a newbie here :wall: I need a script that can search for a file in a directory and copy the contents of that file in a new file. Please help me. :confused: Thanks in advance~ (6 Replies)
Discussion started by: zel2zel
6 Replies

9. UNIX for Dummies Questions & Answers

compare 2 file contents , if same delete 2nd file contents

Give shell script....which takes two file names as input and compares the contents, is both are same delete second file's contents..... I try with "diff"...... but confusion how to use "diff" with if ---else Thanking you (5 Replies)
Discussion started by: krishnampkkm
5 Replies

10. UNIX for Advanced & Expert Users

Searching contents of a file

Is there a way a command or a combination through which i can check the contents of a all files in a directory and get the return as the file names which contains the partiuclar string. (2 Replies)
Discussion started by: thepitzaboy
2 Replies
Login or Register to Ask a Question