use File::Find; sub rename_file { my $fullpath = $File::Find::name; rename ($fullpath, $fullpath.'z') || warn "Failed to rename $fullpath\n"; } find (\&rename_file, $path);