QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2050|回复: 8

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

[复制链接]
发表于 2003-5-7 19:34:20 | 显示全部楼层 |阅读模式
我需要把当前目录和子目录中的image*.gif 改为Image*.gif
用rename i I image*.gif只能该当前目录下的,有没有什么好办法把他们一次搞定呀?
 楼主| 发表于 2003-5-9 22:58:52 | 显示全部楼层
是不是必须用shell或perl等了???
回复

使用道具 举报

发表于 2003-5-9 23:27:20 | 显示全部楼层
mv -r(递归)
回复

使用道具 举报

 楼主| 发表于 2003-5-10 00:36:29 | 显示全部楼层
不明白?
让我好好想一想.
回复

使用道具 举报

发表于 2003-5-10 13:31:04 | 显示全部楼层
这才发现linux下居然有rename这个命令 果然比solaris强那么一些
回复

使用道具 举报

发表于 2003-5-10 19:51:46 | 显示全部楼层
i与I有什么不同吗?
linux 认大小写吗?

要不用find 试一下。 如find -nameimage*.gif  -exec rename {}....
后边我也不太清楚了。
试试吧
回复

使用道具 举报

 楼主| 发表于 2003-5-10 20:55:53 | 显示全部楼层
用find -name 'image*.gif' 可以找到所有的需要修改的文件,但是 -exec 提示find: missing argument to `-exec'
我以前是连这个搜索命令也用不大好,这次可以全部找出来了

btw 我有一些网页中的贴图文件名是大写的i,可是目录中是小写的i,造成无法显示图片,在ie下没有问题,可能是linux对大小写敏感造成的.
回复

使用道具 举报

发表于 2003-5-10 21:14:33 | 显示全部楼层
请问一下,为什么用-exec后会有missing argument to 'exec'的提示?
回复

使用道具 举报

发表于 2003-5-11 22:32:23 | 显示全部楼层
看一下这个吧
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
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-8 02:48 , Processed in 0.146767 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表