Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum. |
Notices |
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Are you new to LinuxQuestions.org? Visit the following links:
Site Howto |
Site FAQ |
Sitemap |
Register Now
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
|
 |
11-13-2014, 03:51 PM
|
#1
|
LQ Newbie
Registered: Oct 2010
Location: Taylorsville, KY, USA
Distribution: RHEL, Fedora, CentOS, Ubuntu & HP-UX
Posts: 22
Rep:
|
comparing two files down to the parts of a line in the file
Good day everyone,
Thank you in advance for any assistance you can provide. Here is my boggle. I'm working on a Centos 6.5 server where I'm pulling an active directory group with winbind. I'm using wbinfo to obtain the listing of the domain admins group to check if there is a difference so I can add those new admins to approximately 300 servers. I am using Chef to push it out through a recipe.
O.k., there is a short history. I'm using the following command to pull the info from AD:
wbinfo --group-info "domain admins" > sysadmin.txt
Which gives me the following output:
domain admins:*:12345678:me,you,them
I then copy that file to sysadmin_old.txt and then run the wbinfo command again and compare the new file with the old file. So, the two files look like this:
sysadmin_old.txt
domain admins:*:12345678:me,you,them
sysadmin.txt
domain admins:*:12345678:me,you,them,us
I am trying to get the true difference between these two files; "us" into a 3rd file named diff.txt.
So, the diff.txt file will look like this:
us
I have used the following with no success:
grep -F -x sysadmin_old.txt sysadmin.txt > diff.txt
grep -f sysadmin_old.txt sysadmin.txt
diff -u sysadmin_old.txt sysadmin.txt | grep -E "^\+"
comm -1 sysadmin_old.txt sysadmin.txt
comm -2 sysadmin_old.txt sysadmin.txt
comm -3 sysadmin_old.txt sysadmin.txt
comm -13 sysadmin_old.txt sysadmin.txt
grep -Fxvf sysadmin_old.txt sysadmin.txt > diff.txt
diff sysadmin_old.txt sysadmin.txt | grep "<" | sed 's/^<//g' > diff.txt
sort sysadmin_old.txt sysadmin.txt | uniq -u > diff.txt
diff sysadmin_old.txt sysadmin.txt | perl -lne 'print $1 if(/^\> (.*)/)'
I have spent the last several hours googling this issue and have been unsuccessful. Any help you can provide is greatly appreciated. I will admit I am just now learning sed and awk, so there may be a solution there that I have not found.
Thank you!
Sincerely,
lhiggie1
|
|
|
11-14-2014, 10:33 AM
|
#2
|
Member
Registered: Feb 2006
Distribution: Debian Sid
Posts: 792
|
I'm not very proficient with awk or sed either, but perhaps dwdiff will do what you want.
Using the following command:
Code:
dwdiff -P -3 sysadmin_old.txt sysadmin.txt
yields this output:
Quote:
======================================================================
{+,us+}
======================================================================
|
You could pipe this to awk with "FS="+" to obtain ",us" and then pipe to "tr" to get rid of the comma(s).
HTH
|
|
3 members found this post helpful.
|
11-14-2014, 02:57 PM
|
#3
|
LQ Newbie
Registered: Oct 2010
Location: Taylorsville, KY, USA
Distribution: RHEL, Fedora, CentOS, Ubuntu & HP-UX
Posts: 22
Original Poster
Rep:
|
Norobro,
Thank you!!!! I'm not familiar with dwdiff. Installed it and it worked perfectly!
I'll mark as solved and add this to my bag of goodies.
Sincerely,
lhiggie1
|
|
|
All times are GMT -5. The time now is 11:09 PM.
|
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.
|
Latest Threads
LQ News
|
|