【问题标题】:Rename directories with fileutils in Ruby在 Ruby 中使用 fileutils 重命名目录
【发布时间】:2011-12-12 04:08:42
【问题描述】:

重命名一组目录时,我最终遇到了奇怪的错误 我为许多文件夹和子文件夹成功调用了 FileUtils。

但是当我在子子文件夹上尝试时,我得到了一个奇怪的错误。 就在执行 FileUtils.mv 之前,我打印 src 和 dest 以确保它们代表正常,这就是我最终得到的结果:

change Folder_From_Archive/Student1/Ex1/
to Folder_From_Archive/Student1/ex1/

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:505:in `rename': Invalid argument - Folder_From_Archive/Student/Ex1/ or Folder_From_Archive/Student/ex1/Ex1 (Errno::EINVAL)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:505:in `mv'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1396:in `fu_each_src_dest'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1410:in `fu_each_src_dest0'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:1394:in `fu_each_src_dest'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/fileutils.rb:494:in `mv'
from unzip_all.rb:51:in `verify_submissions'
from unzip_all.rb:44:in `each'
from unzip_all.rb:44:in `verify_submissions'
from unzip_all.rb:40:in `each'
from unzip_all.rb:40:in `verify_submissions'
from unzip_all.rb:80

有趣的是,我有很多学生文件夹,我用相同的命令成功地重命名了。

编辑:按照问题。 我尝试将文件夹路径/Ex1 移动到路径/ex1 我基本上想把ex1重命名为ex1,所以在运行之前ex1是不存在的。

这是我可以重命名的文件夹的 ls 结果 drwxr-xr-x 这里是我无法重命名的文件夹 Ex1 drwxr-----

【问题讨论】:

    标签: ruby directory mv


    【解决方案1】:

    由于您没有发布代码,因此很难确定出了什么问题,但错误消息清楚地表明您正在尝试将 Ex1 目录移动到不存在的 ex1 目录中。您需要将您的电话转至File.mv

    【讨论】:

      【解决方案2】:

      你能用'ls -ld'检查这些文件夹的权限和所有权,然后把它们贴在这里吗?例如封闭文件夹和导致错误的文件夹

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-03-13
        • 2020-04-30
        • 2022-11-18
        • 2013-01-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多