>>622
そこで出るのはNameErrorじゃないような気がするが…
can't convert nil into String (TypeError)
か
No such file or directory - (Errno::ENOENT)
あたりだと思うぞ

>>622
ARGV[0]を利用するメソッドで起こる例外を
例外処理で補足するのがひとつの方法、
もうひとつはスクリプトの最初のほうで

if ARGV.empty? then
puts 'ERROR: 引数がありません'
exit
end

みたいな「引数が空ならメッセージ出して終了」な処理を入れること。
引数の有無はスクリプト全体にとって致命的だから
複雑でないスクリプトなら後者で一箇所でまとめて判定したい俺。