次のコードでシステムコマンドが存在するかどうかを確認しようとしています:
require 'open3'
Open3.popen3('non-existing command') do |stdin, stdout, stderr, thread|
exit_error = stderr.readlines
if exit_error["No such file or directory"]
puts "command not found"
end
end
ただし、次のエラー メッセージで単にクラッシュし、続行しません。
/home/pavel/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/open3.rb:211:in `spawn': No such file or directory - non-existing (Errno::ENOENT)
なぜ、どのように修正するのですか?