01-09-2013
Script to find difference between 2 files by column
Hi , i am newbie to shell scripting and am trying to do the below job,
A shell script to be run with a command like
sh Compare.ksh file1.txt file2.txt 1 2 > file3.txt
1 2-are the key columns
Consider the delimiter would be Tab or comma
File 1:
SK TEST NAME MATHS PHYSICS
21 1 AAA 45 65
21 2 AAA 48 66
22 1 BBB 46 64
22 2 BBB 47 65
23 1 CCC 58 85
23 2 CCC 59 88
File 2:
SK TEST NAME MATHS PHYSICS
21 1 AAA 45 65
21 2 AAA 48 66
22 1 BBB 46 6
22 2 BBB 47 65
23 1 CCC 58 85
23 2 CC 59 88
And return result like,
File 3:
FILE SK TEST NAME PHYSICS
file1.txt 22 1 BBB 64
file2.txt 22 1 BBB 6
file1.txt 23 2 CCC
file2.txt 23 2 CC
Any expert help for this student?
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I want to write a script which will compare the 1st column of both the files and will give the difference.
e.g:-
my 1st file contains:
89 /usr
52 /usr/local
36 /tmp
92 /opt
96 /home
27 /etc/opt/EMCom
1 ... (3 Replies)
Discussion started by: adityam
3 Replies
2. Shell Programming and Scripting
Hi All,
i have a file that is tab delimited. i need help to find the rows which are having same price based on the site code but some times, there are difference so i need to find only the records which are different in all site code.
Dept Sec Barcode 10001 10002 10003 10004... (1 Reply)
Discussion started by: malcomex999
1 Replies
3. Solaris
I need to find the difference between two files in UNIX. I tried diff, but couldn't get it right.
There are two files:
file1: apple
mango
strawberry
banana
grape
file2: grape
apple
banana
I need an output file like below: ... (11 Replies)
Discussion started by: kisaad
11 Replies
4. UNIX for Dummies Questions & Answers
I have two files as below
File1:
a
b
c
d
File2:
a
b
When i find the difference the output would be c&d..
How can i get my requirement...pls help...
Many thanks in advance (10 Replies)
Discussion started by: jagadish_gaddam
10 Replies
5. UNIX for Advanced & Expert Users
I have 2 files as follows.
file1.txt
<cell>123</cell>
<cell>345</cell>
file2.txt
<cell>123</cell>
<cell>456</cell>
out out should be
output.txt
<cell>456></cell>
How do we achieve this> The difference betwenn the two files should be wirtten to the output file..
... (2 Replies)
Discussion started by: kanthrajgowda
2 Replies
6. Shell Programming and Scripting
i basically have 2 files and sdiff of the files is given below
sdiff file1 file 2
control_file <
path INDEX <
size 613 <
mode 0444 ... (1 Reply)
Discussion started by: under_cons
1 Replies
7. Shell Programming and Scripting
Hi , i am newbie to shell scripting and am trying to do the below job,
A shell script to be run with a command like
sh Compare.ksh file1.txt file2.txt 1 2 > file3.txt
1 2-are the key columns
Consider the delimiter would be Tab or comma
File 1:
SK TEST NAME MATHS PHYSICS
21 1... (1 Reply)
Discussion started by: shakthi666
1 Replies
8. Shell Programming and Scripting
File 1:
20130416,235800,10.78.25.104,BR2-loc,60.0,1624,50.0,0,50.0,0
20130416,235800,10.78.25.104,BR1-LOC,70.0,10,50.0,0,70.0,0
20130416,235800,10.78.25.104,Hub_None,60.0,15,60.0,0,50.0,0
File 2:
20130417,000200,10.78.25.104,BR2-loc,60.0,1626,50.0,0,50.0,0... (3 Replies)
Discussion started by: Lakshmikumari
3 Replies
9. Shell Programming and Scripting
Hi,
I need to find the difference between 2 files in unix and write the result in the new file
File1:
A
B
File2:
X 123 hajkd
Y 345 adjfka
A 123 djafjhd
B 678 dsndjks
Output file:
X 123 hajkd
Y 345 adjfka
Thanks. (6 Replies)
Discussion started by: nani1984
6 Replies
10. Shell Programming and Scripting
Hi All,
I want to find the difference between two files, by checking only the headers (column names) and report if any new column is added in the latest file.
For Ex: If the file "declartion.txt has these columns
url;image;id;showcase_id;showcase_name
and the actual file "feed.txt" has... (34 Replies)
Discussion started by: Praveen Pandit
34 Replies
DIFF3(1) General Commands Manual DIFF3(1)
NAME
diff3 - 3-way differential file comparison
SYNOPSIS
diff3 [ -exEX3 ] file1 file2 file3
DESCRIPTION
Diff3 compares three versions of a file, and publishes disagreeing ranges of text flagged with these codes:
==== all three files differ
====1 file1 is different
====2 file2 is different
====3 file3 is different
The type of change suffered in converting a given range of a given file to some other is indicated in one of these ways:
f : n1 a Text is to be appended after line number n1 in file f, where f = 1, 2, or 3.
f : n1 , n2 c Text is to be changed in the range line n1 to line n2. If n1 = n2, the range may be abbreviated to n1.
The original contents of the range follows immediately after a c indication. When the contents of two files are identical, the contents of
the lower-numbered file is suppressed.
Under the -e option, diff3 publishes a script for the editor ed that will incorporate into file1 all changes between file2 and file3, i.e.
the changes that normally would be flagged ==== and ====3. Option -x (-3) produces a script to incorporate only changes flagged ====
(====3). The following command will apply the resulting script to `file1'.
(cat script; echo '1,$p') | ed - file1
The -E and -X are similar to -e and -x, respectively, but treat overlapping changes (i.e., changes that would be flagged with ==== in the
normal listing) differently. The overlapping lines from both files will be inserted by the edit script, bracketed by "<<<<<<" and ">>>>>>"
lines.
For example, suppose lines 7-8 are changed in both file1 and file2. Applying the edit script generated by the command
"diff3 -E file1 file2 file3"
to file1 results in the file:
lines 1-6
of file1
<<<<<<< file1
lines 7-8
of file1
=======
lines 7-8
of file3
>>>>>>> file3
rest of file1
The -E option is used by RCS merge(1) to insure that overlapping changes in the merged files are preserved and brought to someone's atten-
tion.
FILES
/tmp/d3?????
/usr/libexec/diff3
SEE ALSO
diff(1)
BUGS
Text lines that consist of a single `.' will defeat -e.
7th Edition October 21, 1996 DIFF3(1)