1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
# cmd2
A :simple-python: Python package for building powerful command-line interpreter (CLI) programs.
Extends the Python Standard Library's [cmd](https://docs.python.org/3/library/cmd.html) package.
The basic use of `cmd2` is identical to that of [cmd](https://docs.python.org/3/library/cmd.html).
1. Create a subclass of [cmd2.Cmd][]. Define attributes and `do_*` methods to control its behavior.
Throughout this documentation, we will assume that you are naming your subclass `App`:
```py title="Creating a class inherited from cmd2.Cmd" linenums="1"
from cmd2 import Cmd
class App(Cmd):
# customized attributes and methods here
```
2. Instantiate `App` and start the command loop:
```py title="Instantiating and starting a cmd2 app" linenums="1" hl_lines="5-6"
from cmd2 import Cmd
class App(Cmd):
# customized attributes and methods here
app = App()
app.cmdloop()
```
## Getting Started
See the [Getting Started](overview/index.md) section for info on how to get started building a
`cmd2` application.
## Migrating from cmd2
See the [Migrating from cmd2](migrating/index.md) section for info on how to migrate a `cmd`
application to `cmd2`.
## Features
See the [Features](features/index.md) section for a detailed guide to the features available within
`cmd2`.
## Examples
See the [Examples](examples/index.md) section for various examples of using `cmd2`.
## Mixins
See the [Mixins](mixins/index.md) section for info on how to extend `cmd2` using mixins.
## Testing
See the [Testing](testing.md) section for special considerations when writing unit or integration
tests for a `cmd2` application.
## API Reference
See the [API Reference](api/index.md) for detailed information on the public API of `cmd2`.
## Meta
See the [Documentation Conventions](doc_conventions.md) for info on conventions used in this
documentation.
|