#!/usr/bin/perl -w # Recurse directories to find .txt files use strict; use File::Find; my $file = ''; my $dir = ''; @ARGV = qw(.) unless @ARGV; # current dir unless otherwise specified $dir = shift @ARGV; sub process_file { return unless -f; #skip directories $file = $_; if ($file =~ m/\.(txt)/si) { # do stuff here } } find(\&process_file, $dir);