首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cmd2命令行参数

cmd2命令行参数
EN

Stack Overflow用户
提问于 2013-11-18 19:28:59
回答 2查看 1.1K关注 0票数 1

我有以下情况:

代码语言:javascript
复制
import sys
from cmd2 import Cmd, make_option, options

class DemoApp(Cmd):
    """Simple command processor example."""

    @options([make_option('-n', '--name', action="store", help="your name"),
         ])
    def do_hello(self, command, opts):
        if opts.name:
            sys.stdout.write('Hello %s\n' % opts.name)
        else:
            sys.stdout.write('Hello Nobody\n')

if __name__ == '__main__':
    DemoApp().cmdloop() 

我想传递一个带有空格的字符串作为选项-n的参数。(在cmd2程序中)

示例:

->hello -n‘我最棒的名字’

当我这样做时,它就被打印出来了:

你好,我的

双引号也是如此

所以它在那里不接受空格。有人知道怎么做吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-18 20:32:14

我想是真的发生了。我在:https://bitbucket.org/catherinedevlin/cmd2/issues?status=new&status=open中提交了一个bug

再加上一个修补程序来修复这个bug。如果有人有同样的问题,如果维护人员不更新代码,您可以使用该修补程序。

票数 0
EN

Stack Overflow用户

发布于 2017-02-26 23:45:02

cmd2的0.7版本解决了这个问题。cmd2现在正确地将引用的参数作为单个参数来处理,而不管引号中是否存在空格。您可以通过以下方式从cmd2安装PyPI的最新版本:

代码语言:javascript
复制
pip install -U cmd2
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20056146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档