我正在尝试使用我的ruby gem提供一个exec文件,但我不确定该怎么做。
我有一个名为pfparser的ruby脚本,如:
#!/usr/bin/env ruby
ENV['path'] = ARGV[0]
require 'pfparser'
在我的pfparser.rb文件中我想接受参数但它似乎没有通过。该参数应该是pfparser.rb文件应该解析并返回输出的文件路径。我觉得我没有正确地做到这一点,但我不知道如何去做。
这感觉有点矫枉过正,我想提供一个用户可以用参数执行的文件。
答案 0 :(得分:1)
我假设pfparser.rb
包含一个类定义,它处理所有的东西。所以我会选择类似的东西:
<强> LIB / pfparser.rb 强>
class PfParser
def initialize path
@path = path
end
def do_job
# change to real stuff
puts "Hi, path is: #{@path}"
end
end
<强>仓/ pfparser 强>
#!/usr/bin/env ruby
require 'pfparser'
PfParser.new(ARGV[0]).do_job
现在:
$ bin/pfparser PATH
#⇒ Hi, path is: PATH