Module os
[hide private]
[frames] | no frames]

Module os

source code

OS routines for Mac, NT, or Posix depending on what system we're on.

This exports: Programs that import and use 'os' stand a better chance of being portable between different platforms. Of course, they must then only use functions that are defined by all platforms (e.g., unlink and opendir), and leave all pathname manipulation to os.path (e.g., split and join).

Classes [hide private]
  _Environ
  error
OS system call failed.
  stat_result
stat_result: Result from stat or lstat.
  statvfs_result
statvfs_result: Result from statvfs or fstatvfs.
Functions [hide private]
 
_execvpe(file, args, env=None) source code
 
_exists(name) source code
 
_get_exports_list(module) source code
 
_make_stat_result(tup, dict) source code
 
_make_statvfs_result(tup, dict) source code
 
_pickle_stat_result(sr) source code
 
_pickle_statvfs_result(sr) source code
 
abort()
Abort the interpreter immediately.
 
access(path, mode)
Use the real uid/gid to test for access to a path.
 
chdir(path)
Change the current working directory to the specified path.
 
chmod(path, mode)
Change the access permissions of a file.
 
close(fd)
Close a file descriptor (for low level IO).
 
dup(fd)
Return a duplicate of a file descriptor.
 
dup2(old_fd, new_fd)
Duplicate file descriptor.
 
execl(file, *args)
Execute the executable file with argument list args, replacing the current process.
source code
 
execle(file, env, *args)
Execute the executable file with argument list args and environment env, replacing the current process.
source code
 
execlp(file, *args)
Execute the executable file (which is searched for along $PATH) with argument list args, replacing the current process.
source code
 
execlpe(file, env, *args)
Execute the executable file (which is searched for along $PATH) with argument list args and environment env, replacing the current process.
source code
 
execv(path, args)
Execute an executable path with arguments, replacing current process.
 
execve(path, args, env)
Execute a path with arguments and environment, replacing current process.
 
execvp(file, args)
Execute the executable file (which is searched for along $PATH) with argument list args, replacing the current process.
source code
 
execvpe(file, args, env)
Execute the executable file (which is searched for along $PATH) with argument list args and environment env , replacing the current process.
source code
 
fdopen(fd, mode='r' , bufsize=...)
Return an open file object connected to a file descriptor.
 
fstat(fd)
Like stat(), but for an open file descriptor.
 
fsync(fildes)
force write of file with filedescriptor to disk.
 
getcwd()
Return a string representing the current working directory.
 
getcwdu()
Return a unicode string representing the current working directory.
 
getenv(key, default=None)
Get an environment variable, return None if it doesn't exist.
source code
 
getpid()
Return the current process id
 
isatty(fd)
Return True if the file descriptor 'fd' is an open file descriptor connected to the slave end of a terminal.
 
listdir(path)
Return a list containing the names of the entries in the directory.
 
lseek(fd, pos, how)
Set the current position of a file descriptor.
 
lstat(path)
Like stat(path), but do not follow symbolic links.
 
makedirs(path, mode=0777)
Super-mkdir; create a leaf directory and all intermediate ones.
source code
 
mkdir(path, mode=0777)
Create a directory.
 
open(filename, flag, mode=0777)
Open a file (for low level IO).
 
pipe()
Create a pipe.
 
popen(command, mode='r' , bufsize=...)
Open a pipe to/from a command returning a file object.
 
popen2(...)
 
popen3(...)
 
popen4(...)
 
putenv(key, value)
Change or add an environment variable.
 
read(fd, buffersize)
Read a file descriptor.
 
remove(path)
Remove a file (same as unlink(path)).
 
removedirs(path)
Super-rmdir; remove a leaf directory and all empty intermediate ones.
source code
 
rename(old, new)
Rename a file or directory.
 
renames(old, new)
Super-rename; create directories as necessary and delete any left empty.
source code
 
rmdir(path)
Remove a directory.
 
spawnl(mode, file, *args)
Execute file with arguments from args in a subprocess.
source code
 
spawnle(mode, file, env, *args)
Execute file with arguments from args in a subprocess with the supplied environment.
source code
 
spawnv(mode, path, args)
Execute the program 'path' in a new process.
 
spawnve(mode, path, args, env)
Execute the program 'path' in a new process.
 
startfile(...)
startfile(filepath [, operation]) - Start a file with its associated application.
 
stat(path)
Perform a stat system call on the given path.
 
stat_float_times(newval=...)
Determine whether os.[lf]stat represents time stamps as float objects.
 
strerror(code)
Translate an error code to a message string.
 
system(command)
Execute the command (a string) in a subshell.
 
tempnam(dir=..., prefix=...)
Return a unique name for a temporary file.
 
times()
Return a tuple of floating point numbers indicating process times.
 
tmpfile()
Create a temporary file with no directory entries.
 
tmpnam()
Return a unique name for a temporary file.
 
umask(new_mask)
Set the current numeric umask and return the previous umask.
 
unlink(path)
Remove a file (same as remove(path)).
 
unsetenv(key) source code
 
urandom(n)
Return a string of n random bytes suitable for cryptographic use.
 
utime(...)
utime(path, (atime, mtime)) utime(path, None)
 
waitpid(pid, options)
Wait for completion of a given process.
 
walk(top, topdown=False, onerror=None)
Directory tree generator.
source code
 
write(fd, string)
Write a string to a file descriptor.
Variables [hide private]
  F_OK = 0
  O_APPEND = 8
  O_BINARY = 32768
  O_CREAT = 256
  O_EXCL = 1024
  O_NOINHERIT = 128
  O_RANDOM = 16
  O_RDONLY = 0
  O_RDWR = 2
A (readonly) code defining the type of the value as defined above.
  O_SEQUENTIAL = 32
  O_SHORT_LIVED = 4096
  O_TEMPORARY = 64
  O_TEXT = 16384
  O_TRUNC = 512
  O_WRONLY = 1
A (readonly) code defining the type of the value as defined above.
  P_DETACH = 4
  P_NOWAIT = 1
A (readonly) code defining the type of the value as defined above.
  P_NOWAITO = 3
  P_OVERLAY = 2
A (readonly) code defining the type of the value as defined above.
  P_WAIT = 0
  R_OK = 4
  SEEK_CUR = 1
A (readonly) code defining the type of the value as defined above.
  SEEK_END = 2
A (readonly) code defining the type of the value as defined above.
  SEEK_SET = 0
  TMP_MAX = 32767
  W_OK = 2
A (readonly) code defining the type of the value as defined above.
  X_OK = 1
A (readonly) code defining the type of the value as defined above.
  altsep = '/'
  curdir = '.'
  defpath = '.;C:\\bin'
  devnull = 'nul'
  environ = {'TMP': 'C:\\Users\\see\\AppData\\Local\\Temp', 'COM...
  extsep = '.'
  linesep = '\r\n'
  name = 'nt'
  pardir = '..'
  pathsep = ';'
  sep = '\\'

Imports: UserDict, copy_reg, os._exit, sys


Function Details [hide private]

abort()

 
Abort the interpreter immediately. This 'dumps core' or otherwise fails in the hardest way possible on the hosting operating system.
Returns:
does not return!

access(path, mode)

 
Use the real uid/gid to test for access to a path. Note that most operations will use the effective uid/gid, therefore this routine can be used in a suid/sgid environment to test if the invoking user has the specified access to the path. The mode argument can be F_OK to test existence, or the inclusive-OR of R_OK, W_OK, and X_OK.
Returns:
True if granted, False otherwise

dup(fd)

 
Return a duplicate of a file descriptor.
Returns:
fd2

execv(path, args)

 
Execute an executable path with arguments, replacing current process.

        path: path of executable file
        args: tuple or list of strings

execve(path, args, env)

 
Execute a path with arguments and environment, replacing current process.

        path: path of executable file
        args: tuple or list of arguments
        env: dictionary of strings mapping to strings

execvp(file, args)

source code 
Execute the executable file (which is searched for along $PATH) with argument list args, replacing the current process. args may be a list or tuple of strings.

execvpe(file, args, env)

source code 
Execute the executable file (which is searched for along $PATH) with argument list args and environment env , replacing the current process. args may be a list or tuple of strings.

fdopen(fd, mode='r' , bufsize=...)

 
Return an open file object connected to a file descriptor.
Returns:
file_object

fstat(fd)

 
Like stat(), but for an open file descriptor.
Returns:
stat result

getcwd()

 
Return a string representing the current working directory.
Returns:
path

getcwdu()

 
Return a unicode string representing the current working directory.
Returns:
path

getenv(key, default=None)

source code 
Get an environment variable, return None if it doesn't exist. The optional second argument can specify an alternate default.

getpid()

 
Return the current process id
Returns:
pid

isatty(fd)

 
Return True if the file descriptor 'fd' is an open file descriptor connected to the slave end of a terminal.
Returns:
bool

listdir(path)

 
Return a list containing the names of the entries in the directory.

        path: path of directory to list

The list is in arbitrary order.  It does not include the special
entries '.' and '..' even if they are present in the directory.

Returns:
list_of_strings

lseek(fd, pos, how)

 
Set the current position of a file descriptor.
Returns:
newpos

lstat(path)

 
Like stat(path), but do not follow symbolic links.
Returns:
stat result

makedirs(path, mode=0777)

source code 
Super-mkdir; create a leaf directory and all intermediate ones. Works like mkdir, except that any intermediate path segment (not just the rightmost) will be created if it does not exist. This is recursive.

open(filename, flag, mode=0777)

 
Open a file (for low level IO).
Returns:
fd

pipe()

 
Create a pipe.
Returns:
(read_end, write_end)

popen(command, mode='r' , bufsize=...)

 
Open a pipe to/from a command returning a file object.
Returns:
pipe

read(fd, buffersize)

 
Read a file descriptor.
Returns:
string

removedirs(path)

source code 
Super-rmdir; remove a leaf directory and all empty intermediate ones. Works like rmdir except that, if the leaf directory is successfully removed, directories corresponding to rightmost path segments will be pruned away until either the whole path is consumed or an error occurs. Errors during this latter phase are ignored -- they generally mean that a directory was not empty.

renames(old, new)

source code 

Super-rename; create directories as necessary and delete any left empty. Works like rename, except creation of any intermediate directories needed to make the new pathname good is attempted first. After the rename, directories corresponding to rightmost path segments of the old name will be pruned way until either the whole path is consumed or a nonempty directory is found.

Note: this function can fail with the new directory structure made if you lack permissions needed to unlink the leaf directory or file.

spawnl(mode, file, *args)

source code 
Execute file with arguments from args in a subprocess. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it.
Returns:
integer

spawnle(mode, file, env, *args)

source code 
Execute file with arguments from args in a subprocess with the supplied environment. If mode == P_NOWAIT return the pid of the process. If mode == P_WAIT return the process's exit code if it exits normally; otherwise return -SIG, where SIG is the signal that killed it.
Returns:
integer

spawnv(mode, path, args)

 
Execute the program 'path' in a new process.

        mode: mode of process creation
        path: path of executable file
        args: tuple or list of strings

spawnve(mode, path, args, env)

 
Execute the program 'path' in a new process.

        mode: mode of process creation
        path: path of executable file
        args: tuple or list of arguments
        env: dictionary of strings mapping to strings

startfile(...)

 

startfile(filepath [, operation]) - Start a file with its associated application.

When "operation" is not specified or "open", this acts like double-clicking the file in Explorer, or giving the file name as an argument to the DOS "start" command: the file is opened with whatever application (if any) its extension is associated. When another "operation" is given, it specifies what should be done with the file. A typical operation is "print".

startfile returns as soon as the associated application is launched. There is no option to wait for the application to close, and no way to retrieve the application's exit status.

The filepath is relative to the current directory. If you want to use an absolute path, make sure the first character is not a slash ("/"); the underlying Win32 ShellExecute function doesn't work if it is.

stat(path)

 
Perform a stat system call on the given path.
Returns:
stat result

stat_float_times(newval=...)

 
Determine whether os.[lf]stat represents time stamps as float objects. If newval is True, future calls to stat() return floats, if it is False, future calls return ints. If newval is omitted, return the current setting.
Returns:
oldval

strerror(code)

 
Translate an error code to a message string.
Returns:
string

system(command)

 
Execute the command (a string) in a subshell.
Returns:
exit_status

tempnam(dir=..., prefix=...)

 
Return a unique name for a temporary file. The directory and a prefix may be specified as strings; they may be omitted or None if not needed.
Returns:
string

times()

 
Return a tuple of floating point numbers indicating process times.
Returns:
(utime, stime, cutime, cstime, elapsed_time)

tmpfile()

 
Create a temporary file with no directory entries.
Returns:
file object

tmpnam()

 
Return a unique name for a temporary file.
Returns:
string

umask(new_mask)

 
Set the current numeric umask and return the previous umask.
Returns:
old_mask

urandom(n)

 
Return a string of n random bytes suitable for cryptographic use.
Returns:
str

utime(...)

 

utime(path, (atime, mtime)) utime(path, None)

Set the access and modified time of the file to the given values. If the second form is used, set the access and modified times to the current time.

waitpid(pid, options)

 
Wait for completion of a given process. options is ignored on Windows.
Returns:
(pid, status << 8)

walk(top, topdown=False, onerror=None)

source code 
Directory tree generator.

For each directory in the directory tree rooted at top (including top
itself, but excluding '.' and '..'), yields a 3-tuple

    dirpath, dirnames, filenames

dirpath is a string, the path to the directory.  dirnames is a list of
the names of the subdirectories in dirpath (excluding '.' and '..').
filenames is a list of the names of the non-directory files in dirpath.
Note that the names in the lists are just names, with no path components.
To get a full path (which begins with top) to a file or directory in
dirpath, do os.path.join(dirpath, name).

If optional arg 'topdown' is true or not specified, the triple for a
directory is generated before the triples for any of its subdirectories
(directories are generated top down).  If topdown is false, the triple
for a directory is generated after the triples for all of its
subdirectories (directories are generated bottom up).

When topdown is true, the caller can modify the dirnames list in-place
(e.g., via del or slice assignment), and walk will only recurse into the
subdirectories whose names remain in dirnames; this can be used to prune
the search, or to impose a specific order of visiting.  Modifying
dirnames when topdown is false is ineffective, since the directories in
dirnames have already been generated by the time dirnames itself is
generated.

By default errors from the os.listdir() call are ignored.  If
optional arg 'onerror' is specified, it should be a function; it
will be called with one argument, an os.error instance.  It can
report the error to continue with the walk, or raise the exception
to abort the walk.  Note that the filename is available as the
filename attribute of the exception object.

Caution:  if you pass a relative pathname for top, don't change the
current working directory between resumptions of walk.  walk never
changes the current directory, and assumes that the client doesn't
either.

Example:

from os.path import join, getsize
for root, dirs, files in walk('python/Lib/email'):
    print root, "consumes",
    print sum([getsize(join(root, name)) for name in files]),
    print "bytes in", len(files), "non-directory files"
    if 'CVS' in dirs:
        dirs.remove('CVS')  # don't visit CVS directories

write(fd, string)

 
Write a string to a file descriptor.
Returns:
byteswritten


Variables Details [hide private]

environ

Value:
{'TMP': 'C:\\Users\\see\\AppData\\Local\\Temp', 'COMPUTERNAME': 'C2', \
'USERDOMAIN': 'c2', 'COMMONPROGRAMFILES': 'C:\\Program Files\\Common F\
iles', 'PROCESSOR_IDENTIFIER': 'x86 Family 15 Model 35 Stepping 2, Aut\
henticAMD', 'PROGRAMFILES': 'C:\\Program Files', 'PROCESSOR_REVISION':\
 '2302', 'SYSTEMROOT': 'C:\\Windows', 'PATH': 'C:\\Program Files\\PC C\
onnectivity Solution\\;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\\
System32\\Wbem;C:\\Program Files\\ATI Technologies\\ATI.ACE\\Core-Stat\
ic;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;I:\\program\\Pytho\
...