Search in file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Search in file
# 1  
Old 09-24-2010
Search in file

Hello

I have a file with the following content
Code:
  
myAddress1	 name1_3.4.88_test.txt 
myAddress1	 name1_4.8.7.6_test.txt 
myAddress1	 name1_2.3.3.4_test.txt 
myAddress1	 name1_7.3.4_test.txt 
myAddress2 ...
myAddress2 ...
myAddress3 ...

and I will search the name (name1) with the highest Version (in this case name1_7.3.4_test.txt) of the key myAddress1.
Therefore I used this Shell command:

Code:
grep -i ${Name} ${FILENAME} | awk '/[0-9]/{if($2>a)a=$2}END{print a}

but I get always the first entry:

Code:
name1_3.4.88_test.txt

Does anyone know, what I'am doing wrong?
Thanks a lot,
All the best!!

Last edited by Scott; 09-24-2010 at 08:09 AM.. Reason: Please use code tags
# 2  
Old 09-24-2010
Your command is working fine at my end.

try this,

Code:
grep -i ${Name} ${FILENAME} | awk -F_ '{if($2>a){a=$2;b=$0}} END{print b}'

# 3  
Old 09-24-2010
Or:

Code:
sort -r -t _ -k 2,2 ${FILENAME}|awk '/'"${Name}"'/ &&NR==1'

This User Gave Thanks to Klashxx For This Post:
# 4  
Old 09-24-2010
Code:
sort -t _ -k 2,2 ${FILENAME}| awk '/'"${Name}"'/ {t=$0}END{print t}'

This User Gave Thanks to rdcwayx For This Post:
# 5  
Old 09-27-2010
Thanks a lot, with this one it works fine:

grep -i ${Name} ${FILENAME} | awk -F_ '{if($2>a){a=$2;b=$0}} END{print b}'

I have just another question, if I have the result like this:

Code:
myAddress1  name1_7.3.4_test.txt

I will have only the name "name1" without the version and the postfix _test.txt.
How can I do this with Shell- Commands?

Thanks a lot and all the best!
# 6  
Old 09-27-2010
Some updates on pravin27's code with your new requirement.

Code:
grep -i ${Name} ${FILENAME} | awk -F_ '{if($2>a){a=$2;b=$1}} END{split(b,s," ");print s[2]}'

This User Gave Thanks to rdcwayx For This Post:
# 7  
Old 09-27-2010
Code:
$ sed -n '/name1/p' file | sort -k2 |tail -1
myAddress1       name1_7.3.4_test.txt

Code:
$ sed -n '/name1/p' file | sort -k2 |tail -1 | sed 's/\(.*\)\t *\([^_]*\).*/\1 \2/'
myAddress1 name1

This User Gave Thanks to ygemici For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Run a loop that will search for a file to thousand machine and know who owns the file

Run a loop that will search for a file to thousand machine and know who owns the file $ for i in abc{01..02} > do > echo -n $i > ssh $i "sudo find / -name .ssh -exec ls -l {} \;|grep id" > done abc01-rw-------. 1 root root 1675 Nov 10 2018 id_rsa abc01-rw-------. 1 root root 1675 Nov 14... (6 Replies)
Discussion started by: invinzin21
6 Replies

2. Shell Programming and Scripting

Read in search strings from text file, search for string in second text file and output to CSV

Hi guys, I have a text file named file1.txt that is formatted like this: 001 , ID , 20000 002 , Name , Brandon 003 , Phone_Number , 616-234-1999 004 , SSNumber , 234-23-234 005 , Model , Toyota 007 , Engine ,V8 008 , GPS , OFF and I have file2.txt formatted like this: ... (2 Replies)
Discussion started by: An0mander
2 Replies

3. UNIX for Dummies Questions & Answers

Search file and print everything except multiple search terms

I'm trying to find a way to search a range of similar words in a file. I tried using sed but can't get it right:sed 's/\(ca01\)*//'It only removes "ca01" but leaves the rest of the word. I still want the rest of the information on the lines just not these specific words listed below. Any... (3 Replies)
Discussion started by: seekryts15
3 Replies

4. Shell Programming and Scripting

Retrieving the relevant search from search file in the main file

I have two files: file 1: hello.com neo.com,japan.com,example.com news.net xyz.com, telecom.net, highlands.net, software.com example2.com earth.net, abc.gov.uk file 2: neo.com example.com abc.gov.uk file 2 are the search keys to search in file 1 if any of the search... (7 Replies)
Discussion started by: csim_mohan
7 Replies

5. Shell Programming and Scripting

Nested search in a file and replace the inner search

Hi Team, I am new to unix, please help me in this. I have a file named properties. The content of the file is : ##Mobile props east.url=https://qa.east.corp.com/prop/end west.url=https://qa.west.corp.com/prop/end south.url=https://qa.south.corp.com/prop/end... (2 Replies)
Discussion started by: tolearn
2 Replies

6. Shell Programming and Scripting

Search string within a file and list common words from the line having the search string

Hi, Need your help for this scripting issue I have. I am not really good at this, so seeking your help. I have a file looking similar to this: Hello, i am human and name=ABCD. How are you? Hello, i am human and name=PQRS. I am good. Hello, i am human and name=ABCD. Good bye. Hello, i... (12 Replies)
Discussion started by: royzlife
12 Replies

7. Shell Programming and Scripting

Perl - use search keywords from array and search a file and print 3rd field when matched

Hi , I have been trying to write a perl script to do this job. But i am not able to achieve the desired result. Below is my code. my $current_value=12345; my @users=("bob","ben","tom","harry"); open DBLIST,"<","/var/tmp/DBinfo"; my @input = <DBLIST>; foreach (@users) { my... (11 Replies)
Discussion started by: chidori
11 Replies

8. Shell Programming and Scripting

Optimised way for search & replace a value on one line in a very huge file (File Size is 24 GB).

Hi Experts, I had to edit (a particular value) in header line of a very huge file so for that i wanted to search & replace a particular value on a file which was of 24 GB in Size. I managed to do it but it took long time to complete. Can anyone please tell me how can we do it in a optimised... (7 Replies)
Discussion started by: manishkomar007
7 Replies

9. Shell Programming and Scripting

sed help - search/copy from one file and search/paste to another

I am a newbie and would like some help with the following - Trying to search fileA for a string similar to - AS11000022010 30.4 31.7 43.7 53.8 60.5 71.1 75.2 74.7 66.9 56.6 42.7 32.5 53.3 I then want to replace that string with a string from fileB - ... (5 Replies)
Discussion started by: ncwxpanther
5 Replies

10. Shell Programming and Scripting

Read a file and search a value in another file create third file using AWK

Hi, I have two files with the format shown below. I need to read first field(value before comma) from file 1 and search for a record in file 2 that has the same value in the field "KEY=" and write the complete record of file 2 with corresponding field 2 of the first file in to result file. ... (11 Replies)
Discussion started by: King Kalyan
11 Replies
Login or Register to Ask a Question