use strict; use warnings; my @node_list = glob("/appl/perform/workspace/htdocs/node_reports/*/*"); my $node = ""; my %needs_desc; foreach my $file (@node_list) { next if $file =~ /^(?:\.\.? | lost\+found)$/x; my ($node, $filename) = (split /\//, $file)[6,7]; my $pattern = "business_use\.$node"; $needs_desc{$node} = 0; ++$needs_desc{$node} if $filename =~ /^$pattern/; } for my $node (sort keys %needs_desc) { print "$node\n" if !$needs_desc{$node}; }