我想知道是否可以使用FileUtils.cp_r
方法将所有文件和目录从源复制到目标,但.tar
文件除外。
有人能给我一个更好理解的例子吗?
由于
答案 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)