[ Thanks to An Anonymous Reader for
this link. ]
“The online reference information for many command-line
UNIX and Linux® commands (the man page) is the primary source
of information about these commands. All man pages are supposed to
explain all the options that are available for a given command and
many provide examples of associated program output, including any
program prompts and associated user input.“To obtain this information, someone has to create those
examples. Reading the source code to see every possible prompt to
the user and the scenarios it displays is usually less functional
than simply running the program to see what it does. To convert
this experimentation into documentation, the developers (or writers
who create reference information for an application) find it useful
to keep a complete record of program input, prompts for information
that are displayed by an application, and user input in response to
those prompts.“Capturing a user’s interaction with a command-line application
is not just a writing task. Most developers of command-line
applications use the C programming language’s printf() command (or
its equivalent in other languages) as their initial debugging tool,
using it to display the contents of different variables and data
structures throughout an application. Depending on the amount of
information displayed, it’s usually easiest to capture this output
in a file for subsequent examination and analysis. Similarly,
system administrators often like to keep a step-by-step record of
interactive system or server configuration and initialization.”