cpython/Lib/tempfile.py

37 lines
776 B
Python

# Temporary file name allocation
import posix
import path
# Changeable parameters (by clients!)...
tempdir = '/usr/tmp'
template = '@'
# Use environment variable $TMPDIR to override default tempdir.
if posix.environ.has_key('TMPDIR'):
# XXX Could check that it's a writable directory...
tempdir = posix.environ['TMPDIR']
# Counter for generating unique names
counter = 0
# User-callable function
# XXX Should this have a parameter, like C's mktemp()?
# XXX Should we instead use the model of Standard C's tempnam()?
# XXX By all means, avoid a mess with four different functions like C...
def mktemp():
global counter
while 1:
counter = counter+1
file = tempdir+'/'+template+`posix.getpid()`+'.'+`counter`
if not path.exists(file):
break
return file