GetoptLong简单例子

1 GetoptLong

GetoptLong主要是用来处理命令行参数。

示例代码:

require 'getoptlong'

opts=GetoptLong.new(
    ['--dir','-d',GetoptLong::REQUIRED_ARGUMENT],
    ['--num','-n',GetoptLong::OPTIONAL_ARGUMENT],
    ['--file','-f',GetoptLong::OPTIONAL_ARGUMENT]
)

dir="tmp"
num=10
test_file="test.txt"

def display_usage
    p "Sample usage:"
    p "ruby getoptlong.rb -d tmp -n 3 -f 'test.txt'"
end

#parse arguments
opts.each do |opt,arg|
    case opt
    when '--dir'
        dir=arg
    when '--num'
        num=arg.to_i
    when '--file'
        test_file=arg
    end
end
    
# print all the arguments
puts "dir=#{dir},num=#{num},file=#{test_file}"

命令行调用:

ruby getoptlong.rb -d test -n 333 -f yanyan.txt

执行结果:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 8,238评论 1 19
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,243评论 2 33
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,667评论 8 265
  • 每一次从门里出去时,都报有满满的希望,而这些希望也在生活中丰富了生命的内容。我从不犹豫自己的决心,却总在转弯的地方...
    我是朝朝爸阅读 305评论 0 0
  • 先后在北京,广州漂过,现在回到了长沙,在长沙最大的互联网公司上班。一个月就可以转正,而且我并没有做太多的事情,就是...
    一个漂泊的浪子阅读 192评论 0 1