Sponsored Content
Top Forums Shell Programming and Scripting Solved: finding diff in files Post 302445963 by ranjithpr on Tuesday 17th of August 2010 09:01:59 AM
Old 08-17-2010
Solution using awk

Code:
$ cat 1.txt
1|XXX
2|YYY
3|ZZZ
$ cat 2.txt
1|XXX
2|FFF
5|DDD
6|TTT

Code:
awk -F'|' 'FNR==NR {buff[$1]=$0;next} 
                  {
                     if(buff[$1]=="")  { new[$1]=$0; next;}
                     if(buff[$1]==$0) { delete buff[$1]; next;}
                     if(buff[$1]!=$0) { chng[$1]=$0; delete buff[$1];}
                  }
                  END{

                     print "new==>"
                     for (var in new) print new[var];

                     print "\n\nupdated==>"
                     for (var in chng) print chng[var];

                     print "\n\ndeleted==>"
                     for (var in buff) if(buff[var]!="") print buff[var];
                  }' 1.txt 2.txt

Result:
Code:
new==>
5|DDD
6|TTT


updated==>
2|FFF


deleted==>
3|ZZZ

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

diff 2 files; output diff's to 3rd file

Hello, I want to compare two files. All records in file 2 that are not in file 1 should be output to file 3. For example: file 1 123 1234 123456 file 2 123 2345 23456 file 3 should have 2345 23456 I have looked at diff, bdiff, cmp, comm, diff3 without any luck! (2 Replies)
Discussion started by: blt123
2 Replies

2. Shell Programming and Scripting

finding duplicate files by size and finding pattern matching and its count

Hi, I have a challenging task,in which i have to find the duplicate files by its name and size,then i need to take anyone of the file.Then i need to open the file and find for more than one pattern and count of that pattern. Note:These are the samples of two files,but i can have more... (2 Replies)
Discussion started by: jerome Sukumar
2 Replies

3. Shell Programming and Scripting

Find duplicates from multuple files with 2 diff types of files

I need to compare 2 diff type of files and find out the duplicate after comparing each types of files: Type 1 file name is like: file1.abc (the extension abc could any 3 characters but I can narrow it down or hardcode for 10/15 combinations). The other file is file1.bcd01abc (the extension... (2 Replies)
Discussion started by: ricky007
2 Replies

4. Shell Programming and Scripting

[solved] Diff between two files by grep

My requiremeny is as follows, I have two files file a A BONES RD,NHILL,3418,VIC 37TH PARALLEL RD,DEEP LEAD,3385,VIC 4 AK RD,OAKEY,4401,QLD A & J FARRS RD,BARMOYA,4703,QLD A B PATTERSON DR,ARUNDEL,4214,QLD A BLAIRS RD,BUCKRABANYULE,3525,VIC file b A BONES... (12 Replies)
Discussion started by: feelmyfrd
12 Replies

5. Shell Programming and Scripting

[solved] merging two files and writing to another file- solved

i have two files as file1: 1 2 3 file2: a b c and the output should be: file3: 1~a 2~b 3~c (1 Reply)
Discussion started by: mlpathir
1 Replies

6. Shell Programming and Scripting

[Solved] Finding the next line when a pattern matches

Hi I have a file like this Record 182: Rejected No Data found Record 196: Rejected File Not Found Record 202: Rejected Invalid argument Record 212: Rejected Bad data My requirement is to search for the value "Record" and if found, then return the next line of it. So,... (3 Replies)
Discussion started by: mr_manii
3 Replies

7. UNIX for Dummies Questions & Answers

[Solved] Finding the Files In the Same Name Directories

Hi, In the Unix Box, I have a situation, where there is folder name called "Projects" and in that i have 20 Folders S1,S2,S3...S20. In each of the Folders S1,S2,S3,...S20 , there is a same name folder named "MP". So Now, I want to get all the files in all the "MP" Folders and write all those... (6 Replies)
Discussion started by: Siva Sankar
6 Replies

8. UNIX for Dummies Questions & Answers

[Solved] Finding the latest file in a directory

Hi All, I am using the below command to find the latest file in a dir: ls -tr $v_sftphomedir/$v_sourcefile |tail -1 or ls -t1 $v_sftphomedir/$v_sourcefile |head -1 and the outpur returned is below: /home/cobr_sftp/var/controllingload/Backup/Dbrwds_Div_1796050246.txt I need only the... (5 Replies)
Discussion started by: abhi_123
5 Replies

9. Shell Programming and Scripting

[Solved] Finding a word in all shell scripts

Hi i have to find the shell script that contain the word PROC__TO_UPDATE SEARCH SHOULD BE INSENSITIVE AND SCRIPT CAN BE DEPLOYED IN ANY PATH. I am on Solaris. (27 Replies)
Discussion started by: rafa_fed2
27 Replies

10. Shell Programming and Scripting

Diff 3 files, but diff only their 2nd column

Guys i have 3 files, but i want to compare and diff only the 2nd column path=`/home/whois/doms` for i in `cat domain.tx` do whois $i| sed -n '/Registry Registrant ID:/,/Registrant Email:/p' > $path/$i.registrant whois $i| sed -n '/Registry Admin ID:/,/Admin Email:/p' > $path/$i.admin... (10 Replies)
Discussion started by: kenshinhimura
10 Replies
CLIENTLIB(3)						     Library Functions Manual						      CLIENTLIB(3)

NAME
clientlib - NNTP clientlib part of InterNetNews library SYNOPSIS
extern FILE *ser_rd_fp; extern FILE *ser_wr_fp; extern char ser_line[]; char * getserverbyfile(file) char *file; int server_init(host) char *host; int handle_server_response(response, host) int reponse; char *host; void put_server(text) char *text; int get_server(buff, buffsize) char *buff; int buffsize; void close_server() DESCRIPTION
The routines described in this manual page are part of the InterNetNews library, libinn(3). They are replacements for the ``clientlib'' part of the NNTP distribution, and are intended to be used in building programs like rrn. Getserverbyfile calls GetConfigValue to get the name of the local NNTP server. It returns a pointer to static space. The file parameter is ignored. Server_init opens a connect to the NNTP server at the specified host. It returns the server's response code or -1 on error. If a connec- tion was made, then ser_rd_fp and ser_wr_fp can be used to read from and write to the server, respectively, and ser_line will contain the server's response. Ser_line can also be used in other routines. Handle_server_response decodes the response, which comes from the server on host. If the client is authorized, it returns 0. A client that is only allowed to read is authorized, but handle_server_response will print a message on the standard output. If the client is not authorized to talk to the server, then a message is printed and the routine returns -1. Put_server sends the text in buff to the server, adding the necessary NNTP line terminators, and flushing the I/O buffer. Get_server reads a line of text from the server into buff, reading at most buffsize characters. Any trailing terminators are stripped off. Get_server returns -1 on error. Close_server sends a ``quit'' command to the server and closes the connection. HISTORY
Written by Rich $alz <rsalz@uunet.uu.net> for InterNetNews. This is revision 1.1.1.1, dated 1997/08/04. SEE ALSO
libinn(3). CLIENTLIB(3)
All times are GMT -4. The time now is 09:38 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy