#!/usr/bin/perl use strict; my $data = '/path/to/base/dir'; my $multi = '/path/to/multi/full/dir'; my $single = '/path/to/single/full/dir'; opendir(DATA, $data) or die "Cant opendir $data: $!\n"; for ( grep !/^\./, readdir(DATA) ) { my $in = "$data/$_"; open(IN, $in) or die "Cant open $in: $!\n"; my $count = grep /^(?:\s+|)FULL/, ; close(IN); if ( $count >= 2 ) { rename($in, "$multi/$_") or (warn "Couldnt move $_ to $multi: $!\n" and next); } else { rename($in, "$single/$_") or (warn "Couldnt move $_ to $single: $!\n" and next); } } # END for grep closedir(DATA)