Visit Our UNIX and Linux User Community


Comparing two files and list the difference with common first line content of both files


 
Thread Tools Search this Thread
Top Forums UNIX for Beginners Questions & Answers Comparing two files and list the difference with common first line content of both files
# 1  
Old 11-12-2019
Comparing two files and list the difference with common first line content of both files

I have two file as given below which shows the ACL permissions of each file. I need to compare the source file with target file and list down the difference as specified below in required output. Can someone help me on this ?

Code:
Source File
*************
# file: /local/test_1
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x


# file: /local/test_1/2019
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x

# file: /local/test_1/2019/10
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

# file: /local/test_1/2019/10.dum.txt
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

Target File :
*************
# file: /local/test_1
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:other::r-x
default:group:sgg:rwx
default:group:sgg_1:r-x


# file: /local/test_1/2019
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:group:sgg_1:r-x


# file: /local/test_1/2019/10
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:other::r-x
default:group:sgg_0:rwx
default:group:sgg_3:r-x

# file: /local/test_1/2019/10.dum.txt
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

Required Output:
*********************

/local/test_1  default:user::rwx,default:group::r-x ,default:other::r-x,default:group:sgg:rwx,default:group:sgg_1:r-x
/local/test_1/2019 default:user::rwx,default:group::r-x ,default:group:sgg_1:r-x
/local/test_1/2019/10  default:user::rwx, default:group::r-x,default:other::r-x,default:group:sgg_0:rwx,default:group:sgg_3:r-x


Last edited by sarathy_a35; 11-14-2019 at 12:19 PM..
# 2  
Old 11-12-2019
How far would
Code:
$ diff -y -b --suppress-common-lines file1 <(sed 's/^# file.*/&\n\n&\n/' file2)
                                  >
                                  >    # file: /local/test_1
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:other::r-x
                                  >    default:group:sgg:rwx
                                  >    default:group:sgg_1:r-x
                                  >
                                  >    # file: /local/test_1/2019
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:group:sgg_1:r-x
                                  >
                                  >
                                  >    # file: /local/test_1/2019/10
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:other::r-x
                                  >    default:group:sgg_0:rwx
                                  >    default:group:sgg_3:r-x
                                  >
                                  >    # file: /local/test_1/2019/10.dum.txt
                                  >

get you?
# 3  
Old 11-12-2019
@Rudic : Im not sure what is the command you are using ?? Can you explain it ?
# 4  
Old 11-12-2019
man diff:


Quote:
NAME
GNU diff - compare files line by line

SYNOPSIS
diff [OPTION]... FILES

DESCRIPTION
Compare FILES line by line.

If your OS / shell don't offer "process substitution", try also:
Code:
sed 's/^# file.*/&\n\n&\n/' file2 | diff -y -b --suppress-common-lines - file1

# 5  
Old 11-12-2019
Only Diff command here will not give the required output .. im trying to bring the filename and non-matching patterns in single line as shown below

Code:
Required Output:
*********************

/local/test_1  default:user::rwx,default:group::r-x ,default:other::r-x,default:group:sgg:rwx,default:group:sgg_1:r-x
/local/test_1/2019 default:user::rwx,default:group::r-x ,default:group:sgg_1:r-x
/local/test_1/2019/10  default:user::rwx, default:group::r-x,default:other::r-x,default:group:sgg_0:rwx,default:group:sgg_3:r-x

--- Post updated at 05:08 PM ---

Code:
sed 's/^# file.*/&\n\n&\n/' file2 | diff -y -b --suppress-common-lines - file1

While using the above command , the result is partially matching but having <, > & whitespaces , could you please help me to get the desired output.

Previous Thread | Next Thread
Test Your Knowledge in Computers #900
Difficulty: Medium
KornShell (ksh) is a Unix shell which was developed by David Korn at UC Berkeley.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Comparing fastq files and outputting common records

I have two files: File_1: @M04961:22:000000000-B5VGJ:1:1101:9280:7106 1:N:0:86 GGCATGAAAACATACAAACCGTCTTTCCAGAAATTGTTCCAAGTATCGGCAACAGCTTTATCAATACCATGAAAAATATCAACCACACCAGAAGCAGCAT + GGGGGGGGGGGGGGGGGCCGGGGGF,EDFFGEDFG,@DGGCGGEGGG7DCGGGF68CGFFFGGGG@CGDGFFDFEFEFF:30CGAFFDFEFF8CAF;;8F ... (3 Replies)
Discussion started by: Xterra
3 Replies

2. Shell Programming and Scripting

Comparing two files with numbers and taking difference in third file

Hi All, I have two files in the following format, with numbers being defined under columns(described by a set of headers) and rows(again defined by a set of identifiers) 2013 2013 Make200 Make201 Merc BMW Jpur Del ... (9 Replies)
Discussion started by: dev.devil.1983
9 Replies

3. Shell Programming and Scripting

Find difference in content between two particular lines in two files

I have two files named Before.txt and After.txt: Now i want to find the difference in content between <Marker 1> and <Marker 2> in the two files. ---------- Post updated at 05:00 PM ---------- Previous update was at 04:50 PM ---------- Any help will be highly appreciated..:) (3 Replies)
Discussion started by: proactiveaditya
3 Replies

4. Shell Programming and Scripting

Comparing 2 difference csv files

Hello, I have about 10 csv files which range from csv1 - csv10. Each csv file has same type/set of tabs and we have around 5-6 tabs for each of the csv file which have slightly different content(data). A sample of CSV1 is shown below: Joins: Data related to Joins, it can be any number of... (2 Replies)
Discussion started by: bobby1015
2 Replies

5. Shell Programming and Scripting

Comparing text in 2 files and output difference in another file.

I have 2 files of almost same text apart from 2,3 ending lines. Now I want to get that difference in another file. e.g file1.txt is Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_livecd-lv_root 18G 2.4G 15G 14% / tmpfs 504M ... (12 Replies)
Discussion started by: kashif.live
12 Replies

6. Shell Programming and Scripting

comparing 2 files and creating third file with uncommon content

I want to compare 2 files and create third file with uncommon content. e.g. file1 ajay suhas tom nisha vijay mahish file2 ajay suhas tom nisha expected output file content vijay mahish Is it possible in single command ? Thanks, Ajay (6 Replies)
Discussion started by: ajaypatil_am
6 Replies

7. Shell Programming and Scripting

Comparing 2 csv files and matching content

Hello, I have the following problem: There are two csv files csv-file #1: aaa1, aaa2, ... aaan aaa1, bbb2, ... bbbn aaa1, ccc2, ... cccn bbb1, bbb2, ... bbbn ... zzz1, zzz2, ... zzzn csv-file #2: aaa1, matchvalue1 ccc1, matchvalue2 (7 Replies)
Discussion started by: ghl10000
7 Replies

8. Shell Programming and Scripting

comparing files content

hi i have a set of files , i need to compare one file content with other file content, i am using cmp -s abc.1 def.2 , but it is not giving theproper o/p even if the content is different.Please help thanks Satya (1 Reply)
Discussion started by: Satyak
1 Replies

9. Solaris

Comparing the common columns of a table in two files

Hi, I have two text files.The first and the 2nd file have data in the same format For e.g. The first file has BOOKS COUNT: 40 BOOKS AUTHOR1 SUM:1018 MAX:47 MIN:1 AVG:25.45 BOOKS AUTHOR3 SUM:181 MAX:48 MIN:3 AVG:18.1 Note:Read it as Table columnname sum(column) max(column) min(column)... (1 Reply)
Discussion started by: ragavhere
1 Replies

10. Shell Programming and Scripting

I want to record the difference in the content of files in different directory

Hi All I am very new to the Unix shell scripting ,, could you pleae help me to generate the output file having the filename and path which files having the difference in the contents in the two directory. all files in both directory have the same name and format. input directory /edc/input1/ ... (3 Replies)
Discussion started by: singhald007
3 Replies

Featured Tech Videos