my $myfile = ">mytext.txt"; open(FILE, $myfile ) || "can not open: $!\n"; # please do not quote "$vars" # $ perldoc -q 'quoting.*vars' my ($fil,$dir) = (0,0); sub search { return if /^\.+$/ or /^ws_ftp/i; # i don#t know what the broken syntax ala # ($_ != /../) should mean, but it was nonsense # see perlop for '=~' and perlvar for $_ # the return statement is important # exiting from sub via next is bad and you'll get # warnings if( ! -l and -d _ ){ # the _ filehandle is described in `perldoc -f stat` print FILE "\n\nDIRECTORY\t\t$File::Find::name\n", ("-" x 20) , "\n"; $dir++; } else { print FILE "$_\n"; $fil++ } }