script:Merge-group.pl

From Dgiref
Jump to: navigation, search
#!/usr/bin/perl -w
 
my $original_group = "/etc/group";
my $dgrid_group = "/etc/group-dgrid";
my $tmp_group = "/tmp/tmp-group-dgrid";
 
my $min_range = 500;
my $max_range = 1000000;
 
open (FILE1, "<$original_group") or die "Can't open $original_group: $!\n";
open (FILE2, "<$dgrid_group") or die "Can't open $dgrid_group: $!\n";
 
@LINES1 = <FILE1>;
@LINES2 = <FILE2>;
 
close(FILE1);
close(FILE2);
 
foreach $line (@LINES1){
 
 	$len = length ($line);	
	if($len <= 1){
		next;
	}
 
	@array=split(/:/,$line);
	if( ($array[2] < $min_range ) || ($array[2] > $max_range) ){
		push(@NEWFILE, $line);
	}
}
 
 
foreach $line (@LINES2){
	$len = length ($line);
        if($len <= 1){
                next;
        }
	push(@NEWFILE, $line);
}
 
open(OUT, ">$tmp_group");
foreach $line (@NEWFILE){
	print OUT $line;
 
}
close(OUT);
 
system("mv $tmp_group $original_group");
system("chmod 644 $original_group");
Personal tools