举例:加入该rb文件名为xx.rb,路径为xx/xx.rb,需要分析的文件为 yy/yy.txt
命令行调用rb文件(假设ruby.exe加入了环境变量):xxx>ruby xx/xx.rb yy/yy.txt
则该参数(yy/yy.rb)通过命令行传给了Ruby解释器,且解释器会将yy/yy.rb赋值给 ARGV[0](ARGV是一个数组常量),所以可以在程序中引用ARGV[0]来获取命令行中传入的路径(yy/yy.txt)
xx.rb文件可以这样开始:
txt_path = ARGV[0]
#异常处理,判断txt_path是否合法,略!!
text = IO.read(txt_path)
#以下为对文本text的分析.....
文件作为脚本的一个参数,通过ARGV.shift传入脚本中
File.readlines("c:/test.txt")