3

我在文档Dir.exists?中查找了该方法,并且我相信我正确使用了它,但是在每次调用时我都会遇到此错误:

未定义的方法“存在吗?” 对于目录:类(NoMethodError)

我是否忽略了一些非常明显的东西?下面是相关代码。

#!/usr/bin/ruby
ARGV.each do |dir|          # Arguements are directory names.
    if !Dir.exists?(dir)
#dosomething
end
end

编辑:

使用File.directory?而不是Dir.exists?修复我的程序,但没有解释这个错误。

4

1 回答 1

8

您使用的是哪个版本的 Ruby?您提供的文档链接适用于 Ruby 2.0。该Dir.exists?方法在 1.8 中不可用

您可以使用以下命令从命令行检查您的 Ruby 版本:

ruby -v

或者从 IRB 会话中,检查RUBY_VERSION常量的值。

如果您有兴趣在您的机器上使用更新/多个 Ruby 版本,我建议您查看RVMrbenv

于 2013-05-06T22:10:48.383 回答