tempdir.py 572 Bytes
Newer Older
1 2 3 4 5 6 7
"""Make temporary directories nicely."""

import atexit
import os.path
import shutil
import tempfile

8

9
def mkdtemp_clean(suffix="", prefix="tmp", dir=None):   # pylint: disable=redefined-builtin
10 11 12 13 14
    """Just like mkdtemp, but the directory will be deleted when the process ends."""
    the_dir = tempfile.mkdtemp(suffix=suffix, prefix=prefix, dir=dir)
    atexit.register(cleanup_tempdir, the_dir)
    return the_dir

15

16 17 18 19
def cleanup_tempdir(the_dir):
    """Called on process exit to remove a temp directory."""
    if os.path.exists(the_dir):
        shutil.rmtree(the_dir)