mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	 c37b65ee10
			
		
	
	
		c37b65ee10
		
	
	
	
	
		
			
			parameters (like \UNIX) are commonly entered using an empty group to separate the markup from a following inter-word space; this is not needed when the next character is punctuation, or the markup is the last thing in the enclosing group. These cases were marked inconsistently; the empty group is now *only* used when needed.
		
			
				
	
	
		
			78 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
	
		
			3.5 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
| \section{\module{tempfile} ---
 | |
|          Generate temporary file names}
 | |
| 
 | |
| \declaremodule{standard}{tempfile}
 | |
| \modulesynopsis{Generate temporary file names.}
 | |
| 
 | |
| \indexii{temporary}{file name}
 | |
| \indexii{temporary}{file}
 | |
| 
 | |
| 
 | |
| This module generates temporary file names.  It is not \UNIX{} specific,
 | |
| but it may require some help on non-\UNIX{} systems.
 | |
| 
 | |
| The module defines the following user-callable functions:
 | |
| 
 | |
| \begin{funcdesc}{mktemp}{\optional{suffix}}
 | |
| Return a unique temporary filename.  This is an absolute pathname of a
 | |
| file that does not exist at the time the call is made.  No two calls
 | |
| will return the same filename.  \var{suffix}, if provided, is used as
 | |
| the last part of the generated file name.  This can be used to provide
 | |
| a filename extension or other identifying information that may be
 | |
| useful on some platforms.
 | |
| \end{funcdesc}
 | |
| 
 | |
| \begin{funcdesc}{TemporaryFile}{\optional{mode\optional{,
 | |
|                                 bufsize\optional{, suffix}}}}
 | |
| Return a file (or file-like) object that can be used as a temporary
 | |
| storage area.  The file is created in the most secure manner available
 | |
| in the appropriate temporary directory for the host platform.  Under
 | |
| \UNIX, the directory entry to the file is removed so that it is secure
 | |
| against attacks which involve creating symbolic links to the file or
 | |
| replacing the file with a symbolic link to some other file.  For other
 | |
| platforms, which don't allow removing the directory entry while the
 | |
| file is in use, the file is automatically deleted as soon as it is
 | |
| closed (including an implicit close when it is garbage-collected).
 | |
| 
 | |
| The \var{mode} parameter defaults to \code{'w+b'} so that the file
 | |
| created can be read and written without being closed.  Binary mode is
 | |
| used so that it behaves consistently on all platforms without regard
 | |
| for the data that is stored.  \var{bufsize} defaults to \code{-1},
 | |
| meaning that the operating system default is used.  \var{suffix} is
 | |
| passed to \function{mktemp()}.
 | |
| \end{funcdesc}
 | |
| 
 | |
| The module uses two global variables that tell it how to construct a
 | |
| temporary name.  The caller may assign values to them; by default they
 | |
| are initialized at the first call to \function{mktemp()}.
 | |
| 
 | |
| \begin{datadesc}{tempdir}
 | |
| When set to a value other than \code{None}, this variable defines the
 | |
| directory in which filenames returned by \function{mktemp()} reside.
 | |
| The default is taken from the environment variable \envvar{TMPDIR}; if
 | |
| this is not set, either \file{/usr/tmp} is used (on \UNIX), or the
 | |
| current working directory (all other systems).  No check is made to
 | |
| see whether its value is valid.
 | |
| \end{datadesc}
 | |
| 
 | |
| \begin{funcdesc}{gettempprefix}{}
 | |
| Return the filename prefix used to create temporary files.  This does
 | |
| not contain the directory component.  Using this function is preferred
 | |
| over using the \code{template} variable directly.
 | |
| \versionadded{1.5.2}
 | |
| \end{funcdesc}
 | |
| 
 | |
| \begin{datadesc}{template}
 | |
| \deprecated{2.0}{Use \function{gettempprefix()} instead.}
 | |
| When set to a value other than \code{None}, this variable defines the
 | |
| prefix of the final component of the filenames returned by
 | |
| \function{mktemp()}.  A string of decimal digits is added to generate
 | |
| unique filenames.  The default is either \file{@\var{pid}.} where
 | |
| \var{pid} is the current process ID (on \UNIX),
 | |
| \file{\textasciitilde\var{pid}-} on Windows NT, \file{Python-Tmp-} on
 | |
| MacOS, or \file{tmp} (all other systems).
 | |
| 
 | |
| Older versions of this module used to require that \code{template} be
 | |
| set to \code{None} after a call to \function{os.fork()}; this has not
 | |
| been necessary since version 1.5.2.
 | |
| \end{datadesc}
 |