my @specs = ( qr/pattern/i, [ qr/notpattern/i ], \&oneline ); find( file => ascii => exec => \&onename, grep => \@specs, in => \@dirs, ); sub onename { my( $shortname, $path, $fullname )= @_; $_ = $shortname; 1; } sub oneline { my( $shortname, $path, $fullname )= @_; my $line = $_; 1; }