02-07-2012
compare multiple files and get the difference
Hi all,
i have 50 files .data should be same in these 50 files , so my task is to find the difference. i need a logic , which finds difference between all files and print in output file with file name where it found that difference .
i tried below logic , but its not giving me what i want.
let me give example
i tried this logic:-
cat $TMPDIR/*lis* | sort | egrep -ve $EXCEPTIONS_LIST_GREP | uniq -u| while read line
do
echo "Unique value found : ${line} : in file : `grep -lx "${line}" $TMPDIR/CELL*`"
aa=`grep -lx "${line}" *list*`
echo "$aa"
done >>$TMPDIR/ai see below data in 6 files which have differ by 1 file :-
cat CELL*|sort|egrep -ve HOTFIXED -e old -e B4 -e b4|sort|grep libsyncsor
1213068711 8303736 pbin/lib/libsyncsort.so
1213068711 8303736 pbin/lib/libsyncsort.so
2424480061 8303736 pbin/lib/libsyncsort.so
330122325 8303736 pbin/lib/libsyncsort.so
330122325 8303736 pbin/lib/libsyncsort.so
now above logic which i gave here , is giving 1 file only (bold 1), see the example below:-
cat CELL*|sort|egrep -ve HOTFIXED -e old -e B4 -e b4|sort|uniq -u
2424480061 8303736 pbin/lib/libsyncsort.so
echo from script :-
+ echo Unique value found : 2424480061 8303736 pbin/lib/libsyncsort.so : in file : /tmp/check_sync_20120207_231421_PID_29642/CELLTADM_LIST_2_celltadm@fra-siapp01_list
But we see three type of files in (1st column differes) , 1st-1213068711 , 2nd -2424480061 , 3rd-330122325
so it should give all these 3 difference.
actually i am comparing one directory structure on multiple servers, i copied all files name to different files (server name wise), now remaining thing to get the difference , on which server ,what file is different
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
compare two .dat files and difference will be moved into separate file.if anybody having code for this please send asap. using diff command, i don't know how to write shell programming.
and my first file is like this including Header and trailer
10Ç20060323Ç01(Header)
01ÇIÇbabuÇ3000
01ÇIÇbaluÇ4000... (1 Reply)
Discussion started by: kirankumar
1 Replies
2. Shell Programming and Scripting
suppose one file
P1168S
P2150L
P85L
Q597R
R1097C
Another file
P2150L
P85L
Q597R
R1097C
R1379C
R1587K
Then output shud be
R1379C
R1587K
thanks (5 Replies)
Discussion started by: cdfd123
5 Replies
3. 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
4. UNIX for Dummies Questions & Answers
I have to compare two files for any differences, then output the lab and question number for any differences. This is what I currently have:
diff lab2.txt lab2answer.txt > lab2compare.txt
Though the output doesn't have to be sent to a .txt (or any sort of log), I found that easier, at least... (2 Replies)
Discussion started by: Joesgrrrl
2 Replies
5. Shell Programming and Scripting
I have two files like this:
#FILE 1
ABCD 4322 26485
JMTJ 5311 97248
XMPJ 4321 58978
#FILE 2
ABCD 4321 26485
JMTJ 5311 97248
XMPJ 4321 68978
What to do: Compare the two files and find those lines that doesn't match. And have a new file like this:
#FILE 3
"from file 1"
ABCD 4322 26485... (11 Replies)
Discussion started by: kingpeejay
11 Replies
6. Shell Programming and Scripting
one file
. . importing table employee 119
. . importing table jobs 1
2nd file
. . importing table employee 120
. . importing table jobs 1
and would like... (2 Replies)
Discussion started by: jhonnyrip
2 Replies
7. UNIX for Dummies Questions & Answers
Hi there,
I'm sure this question has been asked many times but I can't find any posts with information.
How can I check the differences between say lines 20 - 200 in file1 and lines 420 - 600 in file2?
Thanks in advance for any help!
js (2 Replies)
Discussion started by: js8765
2 Replies
8. Shell Programming and Scripting
It seems like a common task, but I haven't been able to find the solution.
vitallog.txt
1310,John,Hancock
13211,Steven,Mills
122,Jane,Doe
138,Thoms,Doe
1500,Micheal,May
vitalinfo.txt
12122,Jane,Thomas
122,Janes,Does
123,Paul,Kite
**OUTPUT**
vitalfiltered.txt
12122,Jane,Thomas... (2 Replies)
Discussion started by: charles33
2 Replies
9. Shell Programming and Scripting
Hi experts,
I am trying to compare two text files and output the difference to another file.
I'm not strictly looking for differences in text but additional text at the end of one file that isn't in another, so basically comparing the file 2 against file 1 and printing any additional text to... (9 Replies)
Discussion started by: martin0852
9 Replies
10. Shell Programming and Scripting
Hi All,
Am trying script to compare 2 files and print the difference found from old file to new file on line by line basis on side by side display.
Basically line by line comparision and files may contain blank line as well
I know we have compare/diff commands but i don't how to make... (10 Replies)
Discussion started by: Optimus81
10 Replies
SORT(1) General Commands Manual SORT(1)
NAME
sort - sort a file of ASCII lines
SYNOPSIS
sort [-bcdfimnru] [-tc] [-o name] [+pos1] [-pos2] file ...
OPTIONS
-b Skip leading blanks when making comparisons
-c Check to see if a file is sorted
-d Dictionary order: ignore punctuation
-f Fold upper case onto lower case
-i Ignore nonASCII characters
-m Merge presorted files
-n Numeric sort order
-o Next argument is output file
-r Reverse the sort order
-t Following character is field separator
-u Unique mode (delete duplicate lines)
EXAMPLES
sort -nr file # Sort keys numerically, reversed
sort +2 -4 file # Sort using fields 2 and 3 as key
sort +2 -t: -o out # Field separator is :
sort +.3 -.6 # Characters 3 through 5 form the key
DESCRIPTION
Sort sorts one or more files. If no files are specified, stdin is sorted. Output is written on standard output, unless -o is specified.
The options +pos1 -pos2 use only fields pos1 up to but not including pos2 as the sort key, where a field is a string of characters delim-
ited by spaces and tabs, unless a different field delimiter is specified with -t. Both pos1 and pos2 have the form m.n where m tells the
number of fields and n tells the number of characters. Either m or n may be omitted.
SEE ALSO
comm(1), grep(1), uniq(1).
SORT(1)