The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Dummies Questions & Answers
Google UNIX.COM


UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
Comparison Unix and Windows file sysytem localp UNIX for Dummies Questions & Answers 1 04-11-2008 01:02 AM
Output format - comparison with I/p file velappangs Shell Programming and Scripting 1 04-03-2008 03:31 AM
file comparison script tiger99 Shell Programming and Scripting 1 01-30-2008 07:47 AM
File Comparison net_shree Shell Programming and Scripting 19 01-10-2008 05:00 PM
File Time Comparison Question pc9456 UNIX for Advanced & Expert Users 2 07-23-2003 12:05 PM

Reply
 
Submit Tools LinkBack Thread Tools Display Modes
  #1  
Old 05-12-2008
Registered User
 

Join Date: Apr 2007
Posts: 44
file comparison...help needed.

Hello all,

Can anyone help me with this.
There are two files and I have to match the second file records with that of first and if matched, print the output in two fies, one containing the matched records and other containing the rest.

Here is the example.
Code:
File1 

"111",erter,"00000",    ,"567"
"gh6",erter,"00000",    ,"567"
"1t7",erter,"00000",    ,"yu7"
"yu8",erter,"00000",    ,"5h7"
--
--
--
Code:
file2

111
345
yu8
--
--
As can be seen 111 and yu8 matches with the first reord in file 1, so the whole row should be printed.

Output should be
Code:
file3 

"111",erter,"00000",    ,"567"
"yu8",erter,"00000",    ,"5h7"
--

--

and 

file4

"gh6",erter,"00000",    ,"567"
"1t7",erter,"00000",    ,"yu7"
---
---

-
Can anyone help me with this. Thanks.
Reply With Quote
Forum Sponsor
  #2  
Old 05-12-2008
Registered User
 

Join Date: May 2008
Posts: 33
By looking at your 2 examples, why don't you;
[1] loop thru the contents of the 2nd file
[2] compare every individual line of the 2nd file with all the lines in the first
[3] print matched lines to file3
[4] After looping thru all the entries in file2, do a diff between file1 and file_matched
[5] parse the o/p of [4] to file4

Disclaimer: I couldn't script if my life depended on it, so can't really help you with that.

Last edited by frozentin; 05-12-2008 at 09:18 PM. Reason: changed name of sample files
Reply With Quote
  #3  
Old 05-12-2008
Registered User
 

Join Date: Apr 2007
Posts: 44
Quote:
Originally Posted by frozentin View Post
By looking at your 2 examples, why don't you;
[1] loop thru the contents of the 2nd file
[2] compare every individual line of the 2nd file with all the lines in the first
[3] print matched lines to file3
[4] After looping thru all the entries in file2, do a diff between file1 and file_matched
[5] parse the o/p of [4] to file4

Disclaimer: I couldn't script if my life depended on it, so can't really help you with that.
Thanks Frozentin but the issue here is that one of the file (file1 in this case ) has huge no of records and looping and comparing is taking a lot of time.

Is there any alternative way to do this with good performance.

Please advise.
Reply With Quote
  #4  
Old 05-12-2008
Registered User
 

Join Date: May 2008
Posts: 33
This suggestion depends on how big your second file is.

But, you could try to put all the entries of the 2nd file into a grep list and then loop thru the 1st file only once. This way you avoid multiple loops that I suggested in my last post.

One more way would be to attack the i/p file in chunks of say 1000 lines, and append o/p to file3/4.
Reply With Quote
  #5  
Old 05-15-2008
Registered User
 

Join Date: May 2008
Posts: 8
Unhappy Script please

Can you please post the script for this as I am not getting to compare by using loop

Thnaks

mah
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools
Display Modes




All times are GMT -7. The time now is 05:34 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0