From 4fd1292c3cd14aaf321747b9c8cfa1cafbf5323c Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Thu, 12 Jun 1997 16:05:46 +0000 Subject: [PATCH] Documentation for Lib/commands.py, from Sue Williams. --- Doc/lib.tex | 3 ++- Doc/lib/lib.tex | 3 ++- Doc/lib/libcommands.tex | 48 +++++++++++++++++++++++++++++++++++++++++ Doc/libcommands.tex | 48 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 Doc/lib/libcommands.tex create mode 100644 Doc/libcommands.tex diff --git a/Doc/lib.tex b/Doc/lib.tex index 0e70debf6aa..61984455ebd 100644 --- a/Doc/lib.tex +++ b/Doc/lib.tex @@ -1,4 +1,4 @@ -\documentstyle[twoside,11pt,myformat]{report} +\documentstyle[twoside,openright,10pt,myformat]{report} % NOTE: this file controls which chapters/sections of the library % manual are actually printed. It is easy to customize your manual @@ -137,6 +137,7 @@ to Python and how to embed it in other applications. \input{libresource} \input{libsyslog} \input{libstat} +\input{libcommands} \input{libpdb} % The Python Debugger diff --git a/Doc/lib/lib.tex b/Doc/lib/lib.tex index 0e70debf6aa..61984455ebd 100644 --- a/Doc/lib/lib.tex +++ b/Doc/lib/lib.tex @@ -1,4 +1,4 @@ -\documentstyle[twoside,11pt,myformat]{report} +\documentstyle[twoside,openright,10pt,myformat]{report} % NOTE: this file controls which chapters/sections of the library % manual are actually printed. It is easy to customize your manual @@ -137,6 +137,7 @@ to Python and how to embed it in other applications. \input{libresource} \input{libsyslog} \input{libstat} +\input{libcommands} \input{libpdb} % The Python Debugger diff --git a/Doc/lib/libcommands.tex b/Doc/lib/libcommands.tex new file mode 100644 index 00000000000..7584931dc5e --- /dev/null +++ b/Doc/lib/libcommands.tex @@ -0,0 +1,48 @@ +\section{Standard module \sectcode{commands}} % If implemented in Python +\stmodindex{commands} + +The \code{commands} module contains wrapper functions for \code{os.popen()} +which take a system command as a string and return any output generated by +the command, and optionally, the exit status. + +The \code{commands} module is only usable on systems which support +\code{popen()} (currently \UNIX{}). + +The \code{commands} module defines the following functions: + +\renewcommand{\indexsubitem}{(in module commands)} +\begin{funcdesc}{getstatusoutput}{cmd} +Execute the string \var{cmd} in a shell with \code{os.popen()} and return +a 2-tuple (status, output). \var{cmd} is actually run as +\samp{cmd ; 2$>$\$1}, so that the returned output will contain output +or error messages. A trailing newline is stripped from the output. +The exit status for the command can be interpreted according to the +rules for the \C{} function \code{wait()}. +\end{funcdesc} + +\begin{funcdesc}{getoutput}{cmd} +Like \code{getstatusoutput()}, except the exit status is ignored and +the return value is a string containing the command's output. +\end{funcdesc} + +\begin{funcdesc}{getstatus}{file} +Return the output of \samp{ls -ld \var{file}} as a string. This +function uses the \code{getoutput()} function, and properly escapes +backslashes and dollar signs in the argument. +\end{funcdesc} + +Example: + +\begin{verbatim} +>>> import commands +>>> commands.getstatusoutput('ls /bin/ls') +(0, '/bin/ls') +>>> commands.getstatusoutput('cat /bin/junk') +(256, 'cat: /bin/junk: No such file or directory') +>>> commands.getstatusoutput('/bin/junk') +(256, 'sh: /bin/junk: not found') +>>> commands.getoutput('ls /bin/ls') +'/bin/ls' +>>> commands.getstatus('/bin/ls') +'-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls' +\end{verbatim} diff --git a/Doc/libcommands.tex b/Doc/libcommands.tex new file mode 100644 index 00000000000..7584931dc5e --- /dev/null +++ b/Doc/libcommands.tex @@ -0,0 +1,48 @@ +\section{Standard module \sectcode{commands}} % If implemented in Python +\stmodindex{commands} + +The \code{commands} module contains wrapper functions for \code{os.popen()} +which take a system command as a string and return any output generated by +the command, and optionally, the exit status. + +The \code{commands} module is only usable on systems which support +\code{popen()} (currently \UNIX{}). + +The \code{commands} module defines the following functions: + +\renewcommand{\indexsubitem}{(in module commands)} +\begin{funcdesc}{getstatusoutput}{cmd} +Execute the string \var{cmd} in a shell with \code{os.popen()} and return +a 2-tuple (status, output). \var{cmd} is actually run as +\samp{cmd ; 2$>$\$1}, so that the returned output will contain output +or error messages. A trailing newline is stripped from the output. +The exit status for the command can be interpreted according to the +rules for the \C{} function \code{wait()}. +\end{funcdesc} + +\begin{funcdesc}{getoutput}{cmd} +Like \code{getstatusoutput()}, except the exit status is ignored and +the return value is a string containing the command's output. +\end{funcdesc} + +\begin{funcdesc}{getstatus}{file} +Return the output of \samp{ls -ld \var{file}} as a string. This +function uses the \code{getoutput()} function, and properly escapes +backslashes and dollar signs in the argument. +\end{funcdesc} + +Example: + +\begin{verbatim} +>>> import commands +>>> commands.getstatusoutput('ls /bin/ls') +(0, '/bin/ls') +>>> commands.getstatusoutput('cat /bin/junk') +(256, 'cat: /bin/junk: No such file or directory') +>>> commands.getstatusoutput('/bin/junk') +(256, 'sh: /bin/junk: not found') +>>> commands.getoutput('ls /bin/ls') +'/bin/ls' +>>> commands.getstatus('/bin/ls') +'-rwxr-xr-x 1 root 13352 Oct 14 1994 /bin/ls' +\end{verbatim}