#!/usr/bin/perl use strict; use warnings; use File::Find::Rule; my $rule = File::Find::Rule->new; my $pattern = qr/^\.DS_Store/i; $rule->file; $rule->name($pattern); $rule->exec( sub { my ( $shortname, $path, $fullname ) = @_; print $fullname, "\n"; unlink $fullname or warn "Can't delete $fullname\n"; } ); my @files = $rule->in($dir);