Tag: optionparser

如何在ruby的OptionParser中使用变量参数

我不太了解ruby,但我正在尝试为这个脚本添加一些function,一位同事写道。 基本上现在它需要一些标志和标准作为输入,它使用OptionParser来解析标志。 我想使用OptionParser来解析一系列类似于cat的命令行参数。 所以我想我的问题是如何编写使用OptionParser解析ruby中cat部分的命令行选项 cat [OPTION]… [FILE]… 希望有意义,任何帮助都表示赞赏。

使用ruby的OptionParser来解析子命令

我希望能够使用ruby的OptionParser来解析表单的子命令 COMMAND [GLOBAL FLAGS] [SUB-COMMAND [SUB-COMMAND FLAGS]] 喜欢: git branch -a gem list foo 我知道我可以切换到一个不同的选项解析器库(如Trollop),但我有兴趣从OptionParser中学习如何做到这一点,因为我想更好地学习库。 有小费吗?

Ruby OptionParser空开关“ – ”行为

编辑: 我编写了使用OptionParser优雅地处理命令行输入的代码。 我正面临两大打击。 传递空开关’ – ‘不会出错。 当然有些程序认为有效,但我的不应该。 该程序需要两个强制开关,但它接受一个开关没有抱怨! 例如program.ruby -f foo -b bar是有效输入,两个开关都是:REQUIRED。 但只提供一个开关没有问题,这不是理想的行为。 对于第一种情况,我已经这样做了: opts.on(‘-‘, /\A-\Z/) do $stderr.print “Invalid empty switch” exit 1 end 它工作正常。 但这是正确的做法吗? 对于第二种情况,我在OptionParser.new块中寻找解决方案,但我找不到一个。 例如 unless options.foo && options.bar puts “Error.” exit 2 end 在OptionParser.new块之外进行是正常的方法吗?