#!/usr/bin/perl -w use strict; my %USERS; foreach my $file () { open(PASSWD,$file); my $strip=$file; $strip =~ s/passwd\.//; while() { my($login,$gcos) = (split(':',$_))[0,4]; if(exists $USERS{$login}) { push(@{$USERS{$login}},$strip); } else { $USERS{$login} = [$gcos,$strip]; } } close(PASSWD); } open(NEWFILE,">endstrx") || print "Can't open servup: $!\n"; foreach my $login (sort keys %USERS) { print NEWFILE "$login:".shift(@{$USERS{$login}}).":"; print NEWFILE join(':',@{$USERS{$login}})."\n"; } close(NEWFILE);