#!/usr/bin/perl use warnings; use strict; my @files = find_files(shift); foreach my $file (@files) { eval { process_file($file) }; die "Could not process $file: $@" if $@; } sub find_files { .... } sub process_file { .... }