2011-09-07 57 views
1

我想抓取特定目录中的所有文件,然后将gsub(/ abc /,'z')应用于所有文件名,然后重新保存文件新的文件名,我该怎么做?系统地更改目录中的文件名w/Ruby

我一直在看文件,但我似乎没有任何它需要的参数,又名文件名等

中号

回答

2

戴夫的答案是正确的。这里有一个例子:

Dir.glob("*.rb").each do |fname| 
    File.rename(fname, fname.gsub(/\.rb/,".rbb")) 
end 

Dir.glob允许您根据某个给定的标准来选择文件,但像戴夫说,你也可以使用Dir.entriesDir.foreach

+0

您也可以使用['迪尔['* RB “]'](http://ruby-doc.org/core/classes/Dir.html#M000630)。 –