[DOC-SIG] Re: [PYTHON DOC-SIG] contributing documentation

Fred L. Drake Fred L. Drake, Jr." <fdrake@acm.org
Thu, 12 Jun 97 14:04:46 EDT

Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

  I've added libcommands.tex and your patches to the Python
development tree; they'll be in the next distribution.  I did have to
make a couple of minor changes to the LaTeX, but they'd be hard to
have done without knowing LaTeX yourself, and I'm happy to make them.
(It's a lot easier checking someone else's documentation than starting
from scratch as well!)
  I've attached the finished libcommands.tex as it appears in the


Fred L. Drake, Jr.
Corporation for National Research Initiatives
1895 Preston White Drive
Reston, VA    20191-5434

Content-Type: text/plain
Content-Description: final libcommands.te
Content-Disposition: inline;
Content-Transfer-Encoding: 7bit

\section{Standard module \sectcode{commands}}	% If implemented in Python

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)}
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()}.  

Like \code{getstatusoutput()}, except the exit status is ignored and
the return value is a string containing the command's output.  

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.


>>> 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')
>>> commands.getstatus('/bin/ls')
'-rwxr-xr-x  1 root        13352 Oct 14  1994 /bin/ls'


DOC-SIG  - SIG for the Python Documentation Project

send messages to: doc-sig@python.org
administrivia to: doc-sig-request@python.org