Visit Our UNIX and Linux User Community


Help me to compare two file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Help me to compare two file
# 1  
Old 02-28-2008
Help me to compare two files using shell script..

Hi Gurus,
Could you please help me to compare groups files of two diffrent servers in hp-ux as we sre doing server migration

group file 1
==============
root:0:user1,user2,user3
adm:1:userx,usery


group file 2
=============
root:0:user1,user3,user4,user5,user6,user7
adm:1:userx,usery,userz


final group
=============
root:0:user1,user2,user3,user4,user5,user6,user7
adm:1:userx,usery,userz

my requirement is to generate the group file something similar to the file "final group"
please send me a script that can do this job

Thanks in Advance
Johnson
# 2  
Old 02-29-2008
Code:
#!/usr/bin/perl -w
foreach $file (@ARGV) {
  open(GROUPFILE, "<$file") || die "Could not open $file for reading $!";
  while (<GROUPFILE>) {
    ($group,$gid,$users)=split(/:/);
    if (defined($groups{"${group}:${gid}"}) {
      $groups{"${gid}:${group}"}.=",$users";
    } else {
      $groups{"${gid}:${group}"}=$users;
    }
  }
  close(GROUPFILE);
}
foreach $grouppair (sort keys(%groups)) {
  ($gid,$group)=split(/:/,$grouppair);
  print "${group}:${gid}:$groups{$grouppair}\n";
}

Untested and it doesn't deal with a user appearing in the same group on two different group files (it will appear twice int eh resulting group file at the moment).

usage:
scriptname.pl groupfile1 groupfile2 groupfile3 ... > finalgroupfile
# 3  
Old 02-29-2008
Hi Thanks for helping me

could you please look into the error

syntax error at ./compare.pl line 6, near ") {"
syntax error at ./compare.pl line 8, near "} else"
Execution of ./compare.pl aborted due to compilation errors.
[root@john]#


Thanks!!
John
# 4  
Old 02-29-2008
Compare group file of unix using Script

I have edited the script but not giving the result

its giving o/p like

root::0

sys::3

tty::10

unix::208

users::20
================

#!/usr/bin/perl -w
foreach $file (@ARGV) {
open(GROUPFILE, "<$file") || die "Could not open $file for reading $!";
while (<GROUPFILE>) {
($group,$gid,$users)=split(/:/);
if (defined($groups{"${group}:${gid}"})) {
$groups{"${gid}:${group}"}.=",$users";
} else {
$groups{"${gid}:${group}"}=$users;
}
}
close(GROUPFILE);
}
foreach $grouppair (sort keys(%groups)) {
($gid,$group)=split(/:/,$grouppair);
print "${group}:${gid}:$groups{$grouppair}\n";
}

Please help

Previous Thread | Next Thread
Test Your Knowledge in Computers #933
Difficulty: Medium
Microcontrollers operating within embedded systems (such as the Raspberry Pi, Arduino, and other similar systems) always have internal hardware to keep track of time.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Shell script (sh file) logic to compare contents of one file with another file and output to file

Shell script logic Hi I have 2 input files like with file 1 content as (file1) "BRGTEST-242" a.txt "BRGTEST-240" a.txt "BRGTEST-219" e.txt File 2 contents as fle(2) "BRGTEST-244" a.txt "BRGTEST-244" b.txt "BRGTEST-231" c.txt "BRGTEST-231" d.txt "BRGTEST-221" e.txt I want to get... (22 Replies)
Discussion started by: pottic
22 Replies

2. Shell Programming and Scripting

How to compare 2 files and create a result file with unmatched lines from first file.?

HI, I have 2 text files. file1 and file2. file1.txt (There are no duplicates in this file) 1234 3232 4343 3435 6564 6767 1213 file2.txt 1234,wq,wewe,qwqw 1234,as,dfdf,dfdf 4343,asas,sdds,dsds 6767,asas,fdfd,fdffd I need to search each number in file1.txt in file2.txt's 1st... (6 Replies)
Discussion started by: Little
6 Replies

3. Shell Programming and Scripting

FASTEN count line of dat file and compare with the CTRL file

Hi All, I thinking on how to accelerate the speed on calculate the dat file against the number of records CTRL file. There are about 300 to 400 folder directories that contains both DAT and CTL files. DAT contain all the flat files records CTL is the reference check file for the... (3 Replies)
Discussion started by: ckwan
3 Replies

4. Shell Programming and Scripting

Compare 2 text file with 1 column in each file and write mismatch data to 3rd file

Hi, I need to compare 2 text files with around 60000 rows and 1 column. I need to compare these and write the mismatch data to 3rd file. File1 - file2 = file3 wc -l file1.txt 58112 wc -l file2.txt 55260 head -5 file1.txt 101214200123 101214700300 101250030067 101214100500... (10 Replies)
Discussion started by: Divya Nochiyil
10 Replies

5. Shell Programming and Scripting

Match list of strings in File A and compare with File B, C and write to a output file in CSV format

Hi Friends, I'm a great fan of this forum... it has helped me tone my skills in shell scripting. I have a challenge here, which I'm sure you guys would help me in achieving... File A has a list of job ids and I need to compare this with the File B (*.log) and File C (extend *.log) and copy... (6 Replies)
Discussion started by: asnandhakumar
6 Replies

6. UNIX for Dummies Questions & Answers

Help with AWK - Compare a field in a file to lookup file and substitute if only a match

I have the below 2 files: 1) Third field from file1.txt should be compared to the first field of lookup.txt. 2) If match found then third field, file1.txt should be substituted with the second field from lookup.txt. 3)Else just print the line from file1.txt. File1.txt:... (4 Replies)
Discussion started by: venalla_shine
4 Replies

7. Shell Programming and Scripting

script to grep a pattern from file compare contents with another file and replace

Hi All, Need help on this I have 2 files one file file1 which has several entries as : define service{ hostgroup_name !host1,!host5,!host6,.* service_description check_nrpe } define service{ hostgroup_name !host2,!host4,!host6,.* service_description check_opt } another... (2 Replies)
Discussion started by: namitai
2 Replies

8. Shell Programming and Scripting

compare two files and make 1st file same as 2nd file

I am trying to compare two file and make changes where ever its different. for example: Contents of file1 IP=192.165.89.11 NM=255.255.0.0 GW=192.165.89.1 Contents of file2 IP=192.165.89.11 NM=255.255.255.255 GW=192.165.89.1 NOTE HERE THAT NM IS DIFFERENT So i want the changes... (6 Replies)
Discussion started by: pradeepreddy
6 Replies

9. Programming

compare XML/flat file with UNIX file system structure

Before i start doing something, I wanted to know whether the approach to compare XML file with UNIX file system structure. I have a pre-configured file(contains a list of paths to executables) and i need to check against the UNIX directory structure. what are the various approches should i use ? I... (6 Replies)
Discussion started by: shafi2all
6 Replies

10. Shell Programming and Scripting

Check File Exists and compare to previous day file script

We have data files that are ftp'd every morning to a SUN server. The file names are exactly the same except for that each has the date included in its name. I have to write script to do 2 things: STEP 1) Verify that the file arrived in morning. STEP 2) Compare the file size of the current... (3 Replies)
Discussion started by: rbknisely
3 Replies

Featured Tech Videos