1

在重命名一组目录时,我最终遇到了一个奇怪的错误,我调用 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-----

4

2 回答 2

2

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

于 2011-10-20T22:14:23.773 回答
0

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

于 2011-10-20T22:14:32.007 回答