递归地将所有文件夹和文件名转换为小写或大写

Mr.*_*ack 2 ruby

我有一个像下面这样的文件夹结构.

-FOO
  -BAG
     Rose.TXT
-BAR
    JaCk.txt

-foo
  -bag
    rose.txt
-bar
    jack.txt

Mik*_*wis 8

我意识到你想要ruby代码,但是我在你的shell中运行一个衬里:

for i in `find * -depth`; do (mv $i `echo $i|tr [:upper:] [:lower:]`); done
Run Code Online (Sandbox Code Playgroud)

如在此处找到:http://ubuntuforums.org/showthread.php?t = 244738

运行一次,它应该做的伎俩.

更新

Ruby代码:

Dir.glob("./**/*").each do |file|
  File.rename(file, file.downcase) #or upcase if you want to convert to uppercase
end
Run Code Online (Sandbox Code Playgroud)