如何批量改名(包含子目录中的)

如何批量改名(包含子目录中的)

我需要把当前目录和子目录中的image*.gif 改为Image*.gif
用rename i I image*.gif只能该当前目录下的,有没有什么好办法把他们一次搞定呀?
是不是必须用shell或perl等了???
mv -r(递归)
不明白?
让我好好想一想.
这才发现linux下居然有rename这个命令 果然比solaris强那么一些
i与I有什么不同吗?
linux 认大小写吗?

要不用find 试一下。 如find -nameimage*.gif  -exec rename {}....
后边我也不太清楚了。
试试吧
用find -name 'image*.gif' 可以找到所有的需要修改的文件,但是 -exec 提示find: missing argument to `-exec'
我以前是连这个搜索命令也用不大好,这次可以全部找出来了

btw 我有一些网页中的贴图文件名是大写的i,可是目录中是小写的i,造成无法显示图片,在ie下没有问题,可能是linux对大小写敏感造成的.
请问一下,为什么用-exec后会有missing argument to 'exec'的提示?
看一下这个吧
http://www.linuxsir.com/bbs/showthread.php?s=&threadid=34906&highlight=%B8%C4%C3%FB

举例说明,不知道是不是这个意思?
javalee//home/javalee/a>ls
a.abc b.abc c.abc d e f
javalee//home/javalee/a>for i in *.* //把所有扩展的文件放如列表
> do
> mv $i ${i%abc}mp3 //注意abc是如何环城mp3的
> done
javalee//home/javalee/a>ls //结果
a.mp3 b.mp3 c.mp3 d e f