in reply to uid file finder

I tried to clean up your code and came up with this:
#!/usr/bin/perl -w use strict; # Always use strict; open(PASSWD, '/etc/passwd') || die "Could not open /etc/passwd: $!\n"; my %where; while (<PASSWD>) { my @linesplit = split /:/; # No need to use $line, # @array1 or @array3 @where{$linesplit[0]} = $linesplit[3]; } close (PASSWD) || die "Error closing file: $!\n"; #Close an opened fil +e! foreach my $i (grep {$where{$_} > 1000} keys %where) { system ("find '/home/u1' -user $i -print > $i"); }
Some notes:
HTH

Jouke Visser, Perl 'Adept'
Using Perl to help the disabled: pVoice and pStory