复制除Ruby中的少数文件和文件夹

时间:2015-08-19 16:52:57

标签: ruby

我想知道是否可以使用FileUtils.cp_r方法将所有文件和目录从源复制到目标,但.tar文件除外。 有人能给我一个更好理解的例子吗?

由于

1 个答案:

答案 0 :(得分:2)

当然,你必须首先实现某种过滤器:

[8] pry(main)> Dir.glob("**/*")
=> ["bin", "CODE_OF_CONDUCT.md", "Gemfile", "Gemfile.lock", "hello.tar", "lib", "LICENSE.txt", "mygem.gemspec", "Rakefile", "README.md", "spec"]

这给了我们该目录和后续目录中的所有文件(感谢ndn的提示),现在让我们过滤出hello.tar

files = Dir.glob("**/*").reject { |file| file.end_with?(".tar") }

现在我们可以将数组传递给Here is my jsFiddle.

FileUtils.cp_r(files, destination)