Parsing Lines from a text file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Parsing Lines from a text file
# 1  
Old 08-26-2005
Parsing Lines from a text file

Hello Guru's

I know there are people who live to be able to help people like me. That's why I'm here!

I have a text file that has a corresponding address information that I need to be able to get maybe as a Unix Function.

The text file contains the following:

AIX17_JB_C;
scsidev@3.5.0;
AIX17_JB;
scsidev@3.3.0;
AIX17_JB_B;
scsidev@3.1.0;

I want to be able to "grep for" AIX17_JB and then it's corresponding scsidev@3.3.0 line.

Then later I may need AIX17_JB_B with it's corresponding scsidev@3.1.0.

Then I'll need to get AIX17_JB_C with it's corresponding scsidev@3.5.0.

Any help is greatly appreciated.
# 2  
Old 08-26-2005
one way:
Code:
#!/bin/ksh

file='myTextFile.txt'
name='AIX17_JB'

getAddr() { # name
 typeset name="$1"

 nawk -F';' -v name="${name}" '$1 == name { getline; print $1; exit}' "${file}"
}

echo "name->[${name}] address->[$(getAddr ${name})]"

# 3  
Old 08-26-2005
MySQL

That's awesome vgersh99!

It works great. Now in layman's terms, what's it do? Smilie
# 4  
Old 08-26-2005
Code:
#!/bin/ksh

# the name of a file to search
file='myTextFile.txt'

# a name to search
name='AIX17_JB'

# function - takes 1 input parameter - the 'name' to look up
getAddr() { # name

#   assign the 1-st [and only] parameter to a locala variable 'name'
 typeset name="$1"

#   call 'nawk' with the Field separator set to ';' and a local nawk variable 'name'
#   set to the value of shell variable '${name}'
 nawk -F';' -v name="${name}" '
     # if the 1-st field is of the same value as the variable 'name'... execute the block
   $1 == name { 
            # get the NEXT line
        getline; 
            # print the 1-st field
        print $1; 
             # exit this run of 'nawk'
        exit
   }' "${file}"
}

#     this is obvious - print out the 'name' to look up AND call the 
#     function 'getAddr' with the variable 'name' as its only parameter
echo "name->[${name}] address->[$(getAddr ${name})]"

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Match text to lines in a file, iterate backwards until text or text substring matches, print to file

hi all, trying this using shell/bash with sed/awk/grep I have two files, one containing one column, the other containing multiple columns (comma delimited). file1.txt abc12345 def12345 ghi54321 ... file2.txt abc1,text1,texta abc,text2,textb def123,text3,textc gh,text4,textd... (6 Replies)
Discussion started by: shogun1970
6 Replies

2. Shell Programming and Scripting

Parsing text file

Hi Friends, I am back for the second round today - :D My input text file is this way Home friends friendship meter Tools Mirrors Downloads My Data About Us Help My own results BLAT Search Results ACTIONS QUERY SCORE START END QSIZE IDENTITY CHRO STRAND ... (7 Replies)
Discussion started by: jacobs.smith
7 Replies

3. Shell Programming and Scripting

Parsing text file

I'm totally stumped with how to handle this huge text file I'm trying to deal with. I really need some help! Here is what is looks like: ab1ba67c331a3d731396322fad8dd71a3b627f89359827697645c806091c40b9 0.2 812a3c3684310045f1cb3157bf5eebc4379804e98c82b56f3944564e7bf5dab5 0.6 0.6... (3 Replies)
Discussion started by: comp8765
3 Replies

4. Programming

Parsing a Text file using C++

I was trying to parse the text file, which will looks like this ###XYZABC#### ############ int = 4 char = 1 float = 1 . . ############ like this my text file will contains lots of entries and I need to store these entries in the map eg. map.first = int and map.second = 4 same way I... (5 Replies)
Discussion started by: agupta2
5 Replies

5. Shell Programming and Scripting

Need help parsing a text file

I have a text file: router1#sh ip blah blah | incl --- Gi2/8 10.60.4.181 --- 10.60.123.175 11 0000 0000 355K Gi2/8 10.60.83.28 --- 224.10.10.26 11 F9FF 3840 154K Gi2/8 10.60.83.198 --- ... (1 Reply)
Discussion started by: streetfighter2
1 Replies

6. Shell Programming and Scripting

Log file text parsing

I'm new to scripting and was wondering if there was a way to accomplish what I want below using shell script(s). If there is a log file as follows, where the id is the unique id of a process, with the timestamp of when the process began and completed displayed, would it be possible to find the... (3 Replies)
Discussion started by: dizydolly
3 Replies

7. Shell Programming and Scripting

Parsing a file using perl and skipping some lines

Hi, Consider following file with input: `YFLG:NC^Byad_insert constraint {id=600104470} {profile=GENDER == 2} {profile=BEHAVIOR == 17} {profile=SITEATTR_MULT == siteid:211051} {profile=AGE in } yad_insert ad {id=1718286093336959379} {type=R} ^AYFLG:YOO^Byad_insert constraint {id=600104471}... (1 Reply)
Discussion started by: bvids
1 Replies

8. Shell Programming and Scripting

Parsing text from file

Any ideas? 1)loop through text file 2)extract everything between SOL and EOL 3)output files, for example: 123.txt and 124.txt for the file below So far I have: sed -n "/SOL/,/EOL/{p;/EOL/q;}" file Here is an example of my text file. SOL-123.go something goes here something goes... (0 Replies)
Discussion started by: ndnkyd
0 Replies

9. Shell Programming and Scripting

Need help in parsing text file contents

Hi, I need some help in extracting the Exception block between the lines 21 Feb 01:18:54:146 ERROR com.orbits.frameworks.integrationframework.ValidationException - Caught exception in validateRequest() (PID=565584) and 21 Feb 01:18:55:149 INFO ... (0 Replies)
Discussion started by: Alecs
0 Replies

10. Shell Programming and Scripting

Text File Parsing

Hey Guys.I am a newbie on Bash Shell Scripting and Perl.And I have a question about file parsing. I have a log file which contains reports about a communication device.I need to take some of the reports from the log file.Its hard to explain the issue.but shortly I can say that, the reports has a... (2 Replies)
Discussion started by: Djlethal
2 Replies
Login or Register to Ask a Question