use 5.010;
use strict;
use warnings FATAL => 'all';
use autodie;
use File::Temp qw(tempfile);
use IO::File qw();
my ($file_handle, $file_name) = tempfile('bumatinaskk.XXXXXXXXXX', UNLINK => 1);
$file_handle->say(q{'hello world'});
$file_handle->close;
say "wrote into temporary file $file_name";
sleep 30; # giving you some time to inspect the temporary file
END { say 'temporary file is going to be deleted now' }
Документация: Файл :: Temp , IO :: File