ls files.* | script.pl OR ./script.pl files.ext files.ext2 files.ext3 #### ./script.pl -d /my/dir/for/files -f files #### .... $defaultdir = "/usual/place/to/look"; $dir = $opt_d; $dir = $defdir unless -e $dir; $defprefix = "files\."; $prefix = $opt_f; $prefix = $defprefix unless $prefix; opendir(LS, $dir) || die "couldn't open dir\n"; while(my $file = readdir(DIR)) { if($file =~ /^$prefix/) { push @FILES,$file; } } ....