问题标签 [subcommand]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
9 回答
16171 浏览

python - 默认子命令,或不使用 argparse 处理子命令

我怎样才能有一个默认的子命令,或者处理没有使用子命令的情况argparse

在这里,我希望选择一个命令,或者仅基于下一个最高级别的解析器(在本例中为顶级解析器)处理的参数。

0 投票
4 回答
11737 浏览

python - 我应该如何在 Python 中实现“嵌套”子命令?

使用 cmdln 在 Python 中实现“嵌套”子命令。

我不确定我在这里使用了正确的术语。我正在尝试使用允许“嵌套”子命令的cmdln实现命令行工具。这是一个真实世界的例子:

实现这一点的最佳方法是什么?我一直在文档、此处和整个网络中搜索有关此内容的更多信息,但结果为空。(也许我用错误的术语搜索。)

由于没有自动执行此操作的未记录功能,我最初的想法是让先前的子命令处理程序确定存在另一个子命令并再次调度命令调度程序。我已经查看了 cmdln 的内部结构,调度程序是一个私有方法,_dispatch_cmd。我的下一个想法是创建自己的子命令调度程序,但这似乎不太理想和混乱。

任何帮助,将不胜感激。

0 投票
7 回答
13985 浏览

python - argparse 可选子解析器(用于 --version)

我有以下代码(使用 Python 2.7):

现在我希望能够调用这个程序,例如--version附加到普通程序或一些子命令:

基本上,我需要声明可选的子解析器。我知道这并不真正受支持,但有任何解决方法或替代方案吗?

编辑:我收到的错误消息:

0 投票
4 回答
6832 浏览

python - Python argparse 位置参数和子命令

我正在使用 argparse 并尝试混合子命令和位置参数,并且出现了以下问题。

此代码运行良好:

上面的代码将 args 解析为Namespace(positional='positional'),但是当我将位置参数更改为具有 nargs='?' 像这样:

它出错了:

为什么是这样?

0 投票
4 回答
4042 浏览

java - Java CLI 解析器

我知道这个问题已经被问过了,但我正在寻找具有特定功能的 Java cli 解析器。我希望它能够定义命令行树,从而使用子命令(以及不止一个级别的深度)。因此,在获得选项之前,我可以拥有 3-4 级命令。并且这些子命令是互斥的。谢谢

0 投票
5 回答
3174 浏览

python - Python:正确处理子命令的全局选项的参数解析器

argparse 无法处理接收全局选项的子命令:

将有p.parse_args('--arg test'.split())工作,
但在p.parse_args('test --arg'.split()).

有人知道python参数解析器可以正确处理子命令的全局选项吗?

0 投票
1 回答
6995 浏览

bash - 带有 bash 的子命令

是否可以为 bash 脚本实现子命令。我有这样的想法:

http://docs.python.org/dev/library/argparse.html#sub-commands

0 投票
3 回答
307 浏览

tcl - Tcl/Tk 中如何使用子命令?

在阅读Tcl/Tk 在线参考中的这个条目时,我遇到了这一段,它指出:

组合框小部件还支持以下 ttk::entry 小部件子命令(有关详细信息,请参见 ttk::entry(n)):

  • 盒子
  • 删除
  • 光标
  • 指数
  • 插入
  • 选择
  • xview

我知道在 Combobox 小部件的这种情况下,它部分由一个 Entry 小部件组成,但子命令究竟是如何使用的?

0 投票
0 回答
69 浏览

linux - 如何在通过build.xml执行一个主命令的同时执行子命令

我一直在尝试通过 build.xml 执行命令列表,如下所示

命令.txt

我的要求是第一个命令是 linux 中的终端命令来打开所需的控制台(运行良好),第二个命令是要在打开的控制台中执行的命令(通过第一个命令)。但我的问题是第二个命令也像第一个命令一样被视为普通终端命令。我希望它作为我的项目控制台命令执行。我们如何告诉构建脚本第一个命令是终端命令而第二个命令是我的项目控制台命令?如果有人知道解决方案,请建议我。

0 投票
1 回答
882 浏览

python - 在 python cmd 模块中选项卡自动完成和子命令的简单实现?

是否可以在 cmd 模块的 python Cmd 类中的子命令中添加选项卡自动完成功能?假设我正在运行我的命令循环,并且我想要一个名为 的命令add,然后我可以在其中选择动物名称,例如add horseadd elephant。如果可能的话,如何为任何子命令添加自动完成选项卡?

我正在为我正在从事的实际项目做的一件事是为不同的模式使用不同的类。如果您键入whitelist,它将在该类中运行另一个命令循环,并且现在处于“白名单”模式。然后,您可以键入 exit 以返回主命令循环。这对于更重量级的模式似乎很好,但是创建一个全新的类继承Cmd似乎有点像添加不同类型的东西这样简单的事情,比如上面的例子。那么,为Cmd可以制表符完成的类添加简单(就代码而言)子命令的最佳方法是什么?谢谢。