A Cmd instance has the following methods:
The optional argument is a banner or intro string to be issued before the first prompt (this overrides the intro class member).
If the readline module is loaded, input will automatically inherit bash-like history-list editing (e.g. Ctrl-P scrolls back to the last command, Ctrl-N forward to the next one, Ctrl-F moves the cursor to the right non-destructively, Ctrl-B moves the cursor to the left non-destructively, etc.).
An end-of-file on input is passed back as the string 'EOF'
.
An interpreter instance will recognize a command name "foo" if and only if it has a method do_foo(). As a special case, a line beginning with the character "?" is dispatched to the method do_help(). As another special case, a line beginning with the character "!" is dispatched to the method do_shell (if such a method is defined).
All subclasses of Cmd inherit a predefined do_help.
This method, called with an argument bar
, invokes the
corresponding method help_bar(). With no argument,
do_help() lists all available help topics (that is, all
commands with corresponding help_*() methods), and also lists
any undocumented commands.
Instances of Cmd subclasses have some public instance variables: