#!/usr/bin/perl use strict; use warnings; use File::Find; my @dirs = ('/dir/subdir'); find( \&wanted, @dirs ); sub wanted { my ( $dev, $ino, $mode, $nlink, $uid, $gid ); /^\.tmp\z/s && ( ( $dev, $ino, $mode, $nlink, $uid, $gid ) = lstat($_) ) && ( int( -M _ ) > 7 ) && unlink($_); }