与えられたすべての引数を改行で区切って単一のテキスト ファイルに書き込む簡単なスクリプトを作成しました。OptionParser を使用してファイルのリストを渡したいと思います。のようなワイルドカードを使用して、いくつかのファイルを追加したいと思います/dir/*
。
私はこれを試しました:
opts = OptionParser.new
opts.on('-a', '--add FILE') do |s|
puts "DEBUG: before #{s}"
@options.add = s
puts "DEBUG: after #{@options.add}"
end
...
def process_arguments
@lines_to_add = Dir.glob @options.add
end
次のようなファイルを追加すると、次のようになります。
./script.rb -a /path/*
私は常にディレクトリ内の最初のファイルのみを取得します。すべてのデバッグ出力は、ディレクトリの最初のファイルのみを示しており、OptionParser が何らかの魔法の解釈を行っているように見えます。
誰もこれを処理する方法を知っていますか?