Python:cmd模块

转自:http://blog.sina.com.cn/s/blog_ac9fdc0b0101nd3d.html

Cmd类型提供了一个创建命令行解析器的框架。简单的来说,可以继承Cmd来创建命令行界面,然后对所有想处理的命令command执行do_command方法。这个方法会接受命令行的其余部分作为自己的唯一参数。比如,如果在命令行中输入:

say hello
do_say方法会连同作为唯一参数的字符串"hello"一起调用。
*******************************************************************************************************
先介绍Cmd一些常用的方法:
(1)cmdloop():类似与Tkinter的mainloop,运行Cmd解析器;
(2)onecmd(str):读取输入,并进行处理,通常不需要重载该函数,而是使用更加具体的do_command来执行特定的命名;
Python:cmd模块_第1张图片
结果如下:
Python:cmd模块_第2张图片
(3)emptyline():当输入空行时调用该方法;
(4)default(line):当无法识别输入的command时调用该方法;
(5)completedefault(text,line,begidx,endidx):如果不存在针对的complete_*()方法,那么会调用该函数
(6)precmd(line):命令line解析之前被调用该方法;
(7)postcmd(stop,line):命令line解析之后被调用该方法;
(8)preloop():cmdloop()运行之前调用该方法;
(9)postloop():cmdloop()退出之后调用该方法;
*******************************************************************************************************
    关于Cmd的使用,通常都是创建自己的类型,继承于CMd,然后使用Cmd的方法来实现自己的功能,一个超简单的例子:
Python:cmd模块_第3张图片
结果也很简单:
Python:cmd模块_第4张图片
****************************************************************************************************

你可能感兴趣的:(Python)