[cmd2.Cmd][] provides all of the same public methods and fields of
cmd.Cmd from the standard library other than
Cmd.emptyline (cmd2 never calls this method). Most apps based on the standard library can be
migrated to cmd2 in just a couple of minutes.
You need to change your import from this:
import cmdto this:
import cmd2Then you need to change your class definition from:
class CmdLineApp(cmd.Cmd):to:
class CmdLineApp(cmd2.Cmd):Have a look at the commands you created to exit your application. You probably have one called
exit and maybe a similar one called quit. You also might have implemented a do_EOF() method so
your program exits like many operating system shells. If all these commands do is quit the
application, you may be able to remove them. See Exiting.
If you are distributing your application, you'll also need to ensure that cmd2 is properly
installed. You will need to add the following dependency to your pyproject.toml or setup.py:
'cmd2>=3,<4'
See Integrate cmd2 Into Your Project for more details.