cmd — 支持面向行的命令解释器

源代码: Lib/cmd.py


The Cmd 类为编写面向行的命令解释器提供简单框架。这些对测试治具、管理工具及稍后将包裹在更完备界面中的原型,经常很有用。

class cmd. Cmd ( completekey = 'tab' , stdin = None , stdout = None )

A Cmd 实例 (或子类实例) 是面向行的解释器框架。没有很好的理由实例化 Cmd 自身;在一定程度上,它作为解释器类的超类很有用,可以自己定义为继承 Cmd 的方法和封装动作方法。

可选自变量 completekey readline 名称为补全键;默认为 Tab 。若 completekey 不是 None and readline 可用,命令补全是自动完成的。

The default, 'tab' , is treated specially, so that it refers to the Tab key on every readline.backend . Specifically, if readline.backend is editline , Cmd will use '^I' 而不是 'tab' . Note that other values are not treated this way, and might only work with a specific backend.

可选自变量 stdin and stdout 指定 Cmd 实例 (或子类实例) 将用于输入/输出的输入/输出文件对象。若未指定,它们默认为 sys.stdin and sys.stdout .

若想要给定 stdin 待使用,确保设置实例的 use_rawinput 属性为 False ,否则 stdin 将被忽略。

Changed in version 3.13: completekey='tab' 被替换通过 '^I' for editline .