嘿,我正在try 将多个文件从一个文件夹移动到另一个文件夹.在FileUtils行中,我试图搜索目标文件夹中所有4个字符的文件夹,然后将文件粘贴到与文件同名的文件夹中.

#!/usr/bin/env ruby

require 'fileutils'

my_dir = Dir["C:/Documents and Settings/user/Desktop/originalfiles/*.doc"]
my_dir.each do |filename| 
  FileUtils.cp(filename, "C:/Documents and Settings/user/Desktop/destinationfolder/****/" + File.basename(filename, ".doc"))
end

推荐答案

这样的办法应该行得通.

my_dir = Dir["C:/Documents and Settings/user/Desktop/originalfiles/*.doc"]
my_dir.each do |filename|
  name = File.basename('filename', '.doc')[0,4]
  dest_folder = "C:/Documents and Settings/user/Desktop/destinationfolder/#{name}/"
  FileUtils.cp(filename, dest_folder)
end

你必须指定目标文件夹,我认为你不能使用通配符.

Ruby相关问答推荐

如何使用Ruby中的时区函数S标准库?

带有(*)签名的Ruby方法

while 语句的主体是块吗?

有没有一种简单的方法可以在 Ruby 中获取图像尺寸?

ActiveRecord::AdapterNotSpecified 数据库配置未指定适配器

如何在 Ruby 中解冻对象?

我不明白Ruby本地范围(local scope)

class_eval、class_exec、module_eval 和 module_exec 有什么区别?

就地修改 ruby​​ 哈希(rails strong params)

Ruby 模板:如何将变量传递到内联 ERB?

跳过 Enumerable#collect 中的迭代

如何在 Ruby 中获取命名空间中的所有类名?

在 Ruby 中查找内存泄漏的原因

Ruby - time.now UTC

从Ruby中的子类方法调用父类中的方法

判断整数是否在范围内

将 lambda 作为块传递

等号 ('=') 放在方法定义中的方法名称之后有什么作用?

将 Nokogiri 文档转换为 Ruby 哈希

如何删除已安装的 ri 和 rdoc?