File::Temp

File::Temp can be used to create and open temporary files safely. The tempfile( ) function returns the name and the open filehandle of a temporary file. The tempdir( ) function creates a temporary directory. File::Temp guarantees that race conditions cannot occur since it returns both a filehandle and filename. In addition, File::Temp checks for safe file and directory permissions, so the sticky bits are checked for group-writable directories. To write a temp file into /tmp (default), you would do something like the following:

#!/usr/local/bin/perl -w

use File::Temp qw(tempfile);

my($fh, $filename) = tempfile(  );

print "opening $filename for writing...\n";
print $fh "some data ...\n";

Get Perl in a Nutshell, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.