问题标签 [getopt-long]
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.
php - 在 linux 上使用 Getopt::Long 驱动系统命令
我正在尝试使用以下 perl 驱动程序执行带有参数的 php 脚本:
但似乎有问题:
由于 ls 系统命令运行良好,但带参数的 php 命令却没有
此 perl 脚本的命令行参数可以是:
-a 10 -h ktest.test.net -t 5 -un admin -pw adminpassword -p "acViewer/index.html?StartDate=20090926040000&EndDate=20111220235959"
c - C 中使用 getopt_long() 的强制选项
使用 C/C++,getopt_long()
可用于解析命令行参数。是否可以告诉函数某些选项是强制性的?例如,如果在没有提及下面的端口的情况下调用getopt_long
解析应该给出错误?startServer
./startServer -port 80
注意:我不是说选项参数是强制性的,而是选项本身。
java - java gnu getopt - 如何使其不区分大小写?
我正在为 java 使用 gnu 的 getopt 库。如何使长选项不区分大小写?即我想--switch
被对待--Switch
。默认行为似乎区分大小写,我没能找到另外定义的地方。
谢谢
linux - 关闭 getopt_long (optarg.h) 中的缩写?
可以关闭缩写getopt_long()
吗?从手册页:
如果缩写是唯一的或与>某些已定义选项完全匹配,则可以缩写长选项名称。
我想这样做是因为我收到的一段代码规范要求标志的全长完全匹配,并且有很多标志。
perl - 如何在选项的子项中访问 Getopt::Long 选项的值?
我的目标是有一个--override=f
选项来操纵其他两个选项的值。诀窍是弄清楚如何在 GetOptions 检测到命令行上存在该选项时执行该选项的值(f
与=f
指示符中匹配的部分) 。sub
这是我的做法:
该代码似乎可以像我想要的那样处理选项和覆盖。我发现在sub
,$_[0]
中包含选项的名称(全名,即使它在命令行上缩写),并$_[1]
包含值。魔法。
我还没有看到这个文档,所以我担心我是否在不知不觉中使用这种技术犯了任何错误。
perl - Perl Getopt::Long 支持参数的空格
我有一个 Perl 脚本,它使用 GetOpts long。像这样的命令很容易处理:
我想要实现的是允许用户在参数之间留出空格。
例如
问题是GetOpt::Long
内部用于@ARGV
根据需要设置变量,并且空格会更改@ARGV
数组,这反过来只会将“构建”作为操作,而仅将“聊天”作为脚本的模块,而忽略其余的参数通过。
有没有一种简单的方法来解析上面 Perl 中的命令行?
我希望有,因为否则我将不得不使用一种非常老套的方法来更改@ARGV
数组,然后再将其传递给 GetOpts。
是否还有其他强大的库可以为我做到这一点?
---------------------------------------量身定做的脚本------- -------------
ruby - How to use getoptlong class in ruby?
I need help using getoptlong class in Ruby. I need to execute command prog_name.ruby -u -i -s filename. So far I can only execute it with prog_name.ruby -u filename -i filename -s filename.
This is my getoptlong code:
ruby - Ruby GetoptLong 修改 ARGV?
Ruby 的GetoptLong的文档给我的印象是它会从 ARGV 中删除已解析的选项。这是有问题的段落:
例如,如果 -a 不需要参数并且 -b 可选地接受参数,则解析 '-a 一 -b 二三' 将导致 ('-a','') 和 ('-b', 'two ') 被处理为选项/参数对,并且 'one','three' 留在 ARGV 中。
然而,情况似乎并非如此。这是我的程序:
这是输出:
(我确实检查过我使用的是 ruby 1.9.2。)
我可以手动删除选项,但这会有点令人头疼,因为根据您传递它们的方式,每个选项都可能占用数组中的一个或两个插槽(--base=foo
vs. --base foo
)。如果 GetoptLong 可以为我删除它们会方便得多。有没有办法做到这一点?
posix - 我应该期望 POSIX 包含 getopt.h 吗?
据此, POSIX 库不包括getopt.h
. 但是,我在以下位置找到了这个unistd.h
:
这是否意味着getopt.h
包含时隐含包含unistd.h
?我的意思是,上面的代码是我应该从 unistd 头文件的所有实现中得到的,还是只是我的特定版本中的代码?此外,__USE_POSIX2
宏是在 POSIX.2 及更高版本中定义的,还是仅适用于 POSIX.2?
perl - 我可以在 perl 中多次调用 Getopts 吗?
我是 perl 的菜鸟,所以请尽量对我的这个问题保持耐心。
似乎如果我多次调用 perl Getopts::Long::GetOpts 方法,第二次调用将被完全忽略。
这正常吗??(为什么)
这个过程的替代方案是什么?
(实际上我已经编写了一个模块,我在其中进行了 GetOpts 调用,使用我的模块的脚本也尝试这样做,但似乎脚本没有获得所需的选项)
谢谢,尼拉吉