package MyTemp; use strict; use warnings; use File::Path (); my @dirs_to_delete; sub delete_on_close { push(@dirs_to_delete, @_) } END { print "Deleting dirs:\n"; print " $_\n" for @dirs_to_delete; File::Path::rmtree(\@dirs_to_delete); } 1;