#!/usr/bin/perl -w # Find unused Groups in /etc/group my $GROUPfile="/etc/group"; my $gfpid = open(GFILE, "<$GROUPfile") or die "$GROUPfile File Not Found: $!\n"; my $PASSWD="/etc/passwd"; my $pfpid = open(PFILE, "<$PASSWD") or die "$PASSWD File Not Found: $!\n"; @PWLINES = ; while (my $line = ) { @GRP = split(/:/, $line); if (length($GRP[3]) < 2){ print "$GRP[0]:$GRP[2] is zero length\n"; my @GIDs = map { (split /:/)[3] } @PWLINES; my $seen = 0; for my $GID (@GIDs) { if ($GID == $GRP[2]) { $seen = 1 } } if (not $seen) { print "$GRP[0]:$GRP[2] has no users\n"; } } }