ruby怎么将将子文件夹中的文件夹复制到目标位置?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (9)

我试图将一个文件夹及其所有子文件夹从源复制到目标文件夹。下面的代码似乎没有做到这一点。我可以只复制文件而不是子文件夹,方法是

FileUtils.cp_r(Dir["/Volumes/TempData/Collects/Sasi/android/*.*"],"/Volumes/Data/Apps/android")

是因为为什么?

require 'fileutils'
puts "operating_system"
operating_system = gets.chomp

    if operating_system == "android" then
     FileUtils.cp_r(Dir["/Volumes/TempData/Collects/Sasi/android/**"],"/Volumes/Data/Apps/android")
     puts "done"
    elsif operating_system == "ios" then
     FileUtils.cp_r(Dir["Volumes/Data/Apps/iOS/CX5/**"],"/Volumes/TempData/Collects/For_CS")
     puts "done"
    else 
     puts "do nothing"
    end
提问于
用户回答回答于

FileUtils.copy_entry方法将复制一个目录树。

在rubydoc中有一些信息:www.ruby-doc.org/stdlib-2.0/libdoc/fileutils/rdoc/FileUtils.html#method-c-copy_entry

有很多选项(比如是否保留文件所有权),但是一些快速测试显示,可以像这样传递源目录和目标目录:

FileUtils.copy_entry @source, @destination

扫码关注云+社区