Listing 9. Removing Temporary Files
#! /usr/local/bin/python
import os
import tempfile
import sys
import signal
t_path = ''
t_file = None
def cleanup(signal, frame):
if t_path != '' and t_file != None:
print 'Cleaning up temporary files ...'
os.close(t_file)
os.remove(t_path)
print 'Done!'
sys.exit(0)
else:
sys.exit(0)
signal.signal(signal.SIGHUP, cleanup)
signal.signal(signal.SIGINT, cleanup)
signal.signal(signal.SIGQUIT, cleanup)
signal.signal(signal.SIGTERM, cleanup)
try:
t_path = tempfile.mktemp()
t_file = os.open(t_path, os.O_CREAT | os.O_RDWR)
except IOError:
print 'Error: Couldn\'t create temp file.'
sys.exit(0)
#
# always close and remove the temp file
# before you exit from script
cleanup(t_path, t_file)