问题标签 [getopts]

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 投票
2 回答
17782 浏览

c++ - 使用 getopt_long (C++) 我如何编写一个 long & short 选项来要求参数?

输出:

输出:

需要解决的冲突: -s 和 --s 都应该说:./a.out: option `--stuff'在使用时需要一个参数,而不需要在命令后面加上参数。但只有 --stuff 可以吗?有谁知道我在这里想念什么?

期望的结果:

0 投票
1 回答
2817 浏览

bash - 如何在 bash 脚本中使用带有 getopts 的通配符?

我有一个 bash 脚本,我想接受一些可选的输入参数,后跟文件名或包含通配符的文件规范。

如果我运行 getopts_problem.sh -td *.txt 脚本愉快地输出当前目录中的 .txt 文件列表:

文件是 readme.txt letter_to_editor.txt someotherfile.txt

如果我运行getopts_problem.sh -td *.ABC 脚本输出

文件是 *.ABC

当前目录中没有扩展名为“.ABC”的文件。然后,出于某种原因,脚本将“*.ABC”解释为文件名。如何让脚本将“*.ABC”识别为要扩展的文件名表达式,而不是实际的文件名?代码如下:

0 投票
1 回答
957 浏览

bash - getopts 截断参数值

我需要在 myscript.sh 中传递一个包含空格作为选项的字符串值。代码如下所示:

当我直接在命令行上调用它时它工作得很好:

但是,我需要将 -i 作为字符串变量传递,但我无法让它工作。选项 -i 的字符串被截断,选项 -t 甚至没有出现(可能是新行)。

有什么建议么?谢谢!

0 投票
2 回答
23062 浏览

bash - 在 getopts 之后解析参数

我想调用这样的 bash 脚本

这是据我所知

但我怎么得到path/to/file

0 投票
2 回答
1002 浏览

bash - Bash getopts 放弃最后一个参数

所以,我正在尝试使用 bash 的内置 getopts 来处理参数处理,除非我得到一个奇怪的结果。这是我的测试脚本;

然而,当我使用它运行脚本时;

我的最后一个 arg 永远不会被拉入或被丢弃。我的回声结果是;

有谁知道这是什么原因造成的?

谢谢。

0 投票
4 回答
13022 浏览

bash - 没有 cmd 时 getopts 打印帮助。行参数匹配

我正在尝试在 bash 中使用 getopts 来解析命令行参数,但如果没有匹配的参数(或没有给出 cmdline 参数),我无法弄清楚如何实现“默认”操作。

这是迄今为止我尝试过的稍微简化的版本:

有没有(简单的)方法可以让它调用 print_help;2号出口;在不匹配的输入上?

0 投票
2 回答
5520 浏览

bash - bash getopts 命令

我在他们的网站上关注 IBM 的例子:

(清单 #5)http://www.ibm.com/developerworks/library/l-bash-parameters/index.html

我想要的只是有一个名称超过 1 个字母的选项。即-pppp 和-qqqq 而不是-p 和-q。

我已经编写了我的程序并且实施 -help 给了我一个问题......

0 投票
1 回答
597 浏览

bash - 如何获得 getopts 源?

我的嵌入式设备使用busybox,它只有getopt。我想将 getopts 移植到我的嵌入式设备上,并正在寻找 getopts 源来做到这一点。我在哪里可以找到 getopts 源?

0 投票
1 回答
540 浏览

bash - 如果参数是文件名,bash getopts 会中断吗?

我正在使用 getopts 编写一个脚本,该命令可以具有任何顺序的参数,包括有效参数-a和文件名,如stuff.txt. 问题是,当我运行这样的命令时:

program.sh -a -b stuff.txt -c -d

我的代码处理参数-a并且没问题-b,直到它到达文件名,然后它停止处理并且不接触参数-c-d然后。我的代码看起来有点像这样:

我在while循环之外处理文件,它们似乎注册得很好。

0 投票
1 回答
4220 浏览

shell - 当没有给出参数时,如何防止需要参数的选项使用下一个选项?

我在 test.sh 中有以下代码:

现在如果我运行./test.sh -f我会得到错误:

但是,当我运行./test.sh -f -i test它时,它会回显 -i。

我知道这是因为它只是将下一个参数用空格分隔,但是有没有简单的方法来处理这个问题?

我可以做if [ $OPTARG == "-i" ]; then exit 1,但我希望当我有多种选择时有一种更简单的方法。