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";
Copyright © 2002 O'Reilly & Associates. All rights reserved.