【问题标题】:Ruby odd scenario opening a directory stored in a variableRuby 奇怪的场景打开存储在变量中的目录
【发布时间】:2012-06-27 14:00:20
【问题描述】:

我有一个 Ruby 脚本,它打开一个目录并将内容打印到屏幕上:

rootDir = '/Users'
puts rootDir

Dir.foreach(rootDir) do |folder|
  next if folder == '.' or folder == '..'

  puts folder if(File.directory? rootDir+'/'+folder)

end

当我在终端运行时,我收到以下错误:

/Users
imager.rb:77:in `open': No such file or directory - /Users (Errno::ENOENT)
from imager.rb:77:in `foreach'
from imager.rb:77

第 77 行是 Dir.foreach 行。但是当我运行以下代码时,它可以完美运行:

rootDir = '/Users'
puts rootDir

Dir.foreach('/Users') do |folder|
  next if folder == '.' or folder == '..'

  puts folder if(File.directory? '/Users'+'/'+folder)

end

好像文件夹路径存放在rootDir时,找不到文件夹。有任何想法吗? /Users 与脚本不在同一目录中。

【问题讨论】:

    标签: ruby file directory


    【解决方案1】:

    刚刚想出了解决办法。文件夹 /Users 是从终端读取的,并存储在一个文件中。当我从终端读取它时,我做了一个 .chomp,但是当我将它存储在一个文件中时,我将 \n 保留在最后。从文件中读取它把它放回最后。哎呀。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-26
      • 2015-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-22
      相关资源
      最近更新 更多