Если вы ищете Ruby-esque способ сделать это, я бы рекомендовал попробовать Trollop .
Начиная с версии 1.1o, вы можете использовать тип :io
, который принимает имя файла, URI или строки stdin
или -
.
require 'trollop'
opts = Trollop::options do
opt :source, "Source file (or URI) to print",
:type => :io,
:required => true
end
opts[:source].each { |l| puts "> #{l.chomp}" }
Если вам нужен путь, то это не то, что вы ищете. Но если вы хотите прочитать файл, это мощный способ абстрагировать его.