我正在尝试使用 cmd 模块实现 python cmd。我想自动完成文件,所以我实现了一些方法,但是,我看到“complete_put(self, text, line, begidx, endidx):" 中的文本参数删除了所有的 '/' 字符。任何人都知道为什么,我该如何避免这种行为?谢谢 :)
问问题
354 次
2 回答
2
我解决了。只需要修改 set_completer_delims 属性。
于 2012-06-27T09:23:01.480 回答
0
这是我使用的代码,它基于互联网上的几个示例。
import os
import cmd
import readline
class Shell(cmd.Cmd, object):
def __init__(self):
cmd.Cmd.__init__(self)
def __complete_path(self, path=None):
return ['/bin', '/boot', '/etc']
def do_put(self,args):
print args
def complete_put(self, text, line, begidx, endidx):
print text
if not text:
return self.__complete_path()
return self.__complete_path(text)
于 2012-06-14T00:32:25.373 回答