小问题,很麻烦,文件批量改名!

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
momupa
帖子: 29
注册时间: 2010-01-11 19:49

小问题,很麻烦,文件批量改名!

#1

帖子 momupa » 2010-11-05 22:49

我在使用过程中遇到点麻烦,请各位高手帮忙。

我用得是数码相机直接将所有照片传到 电脑上。

所有照片默认扩展名是.JPG

但是QQ空间上传的扩展名是.jpg

悲剧就这样发生了,我必须一个一个目录的修改扩展名

请问有没有这样一个命令

可以把当前目录包括子目录 所有文件后缀名修改的命令

想要达成的效果是把 目录2010 下所有 .JPG 的文件 修改成 .jpg 文件

最好可以做成 像dos .bat 这样的文件。。。一劳永逸。。。

谢谢

具体目录位置如图:
图片
头像
untitled
帖子: 611
注册时间: 2008-12-18 11:47

Re: 小问题,很麻烦,文件批量改名!

#2

帖子 untitled » 2010-11-05 22:54

不知道这个行不,手上没系统。
进入到2010,然后find . -type f -name '*.JPG' -exec rename 'JPG' 'jpg' {} \;
上次由 untitled 在 2010-11-05 23:09,总共编辑 1 次。
momupa
帖子: 29
注册时间: 2010-01-11 19:49

Re: 小问题,很麻烦,文件批量改名!

#3

帖子 momupa » 2010-11-05 22:58

untitled 写了:不知道这个行不,手上没系统。
进入到2010,然后for x in *.JPG;do mv "$x.JPG" "$x.jpg";done

mao@mao-desktop:~/图片/2010$ for x in *.JPG;do mv "$x.JPG" "$x.jpg";done
mv: 无法 stat “*.JPG.JPG”: 没有那个文件或目录
mao@mao-desktop:~/图片/2010$
头像
untitled
帖子: 611
注册时间: 2008-12-18 11:47

Re: 小问题,很麻烦,文件批量改名!

#4

帖子 untitled » 2010-11-05 23:11

momupa 写了:
untitled 写了:不知道这个行不,手上没系统。
进入到2010,然后for x in *.JPG;do mv "$x.JPG" "$x.jpg";done

mao@mao-desktop:~/图片/2010$ for x in *.JPG;do mv "$x.JPG" "$x.jpg";done
mv: 无法 stat “*.JPG.JPG”: 没有那个文件或目录
mao@mao-desktop:~/图片/2010$
太久没用了。SHELL又都忘光光了。sed都不会用了。本来想用sed修改$x的值,想不起怎么写了
find . -type f -name '*.JPG' -exec rename 'JPG' 'jpg' {} \;
这个吧。
momupa
帖子: 29
注册时间: 2010-01-11 19:49

Re: 小问题,很麻烦,文件批量改名!

#5

帖子 momupa » 2010-11-05 23:17

untitled 写了:
momupa 写了:
untitled 写了:不知道这个行不,手上没系统。
进入到2010,然后for x in *.JPG;do mv "$x.JPG" "$x.jpg";done

mao@mao-desktop:~/图片/2010$ for x in *.JPG;do mv "$x.JPG" "$x.jpg";done
mv: 无法 stat “*.JPG.JPG”: 没有那个文件或目录
mao@mao-desktop:~/图片/2010$
太久没用了。SHELL又都忘光光了。sed都不会用了。本来想用sed修改$x的值,想不起怎么写了
find . -type f -name '*.JPG' -exec rename 'JPG' 'jpg' {} \;
这个吧。

Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
头像
untitled
帖子: 611
注册时间: 2008-12-18 11:47

Re: 小问题,很麻烦,文件批量改名!

#6

帖子 untitled » 2010-11-05 23:21

[root@oracle test]# ls
a.jpg b.jpg
[root@oracle test]# find . -type f -name '*.jpg' -exec rename 'jpg' 'JPG' {} \;
[root@oracle test]# ls
a.JPG b.JPG
[root@oracle test]#

我这边bash运行这个是正常的。你再检查下命令
头像
astolia
论坛版主
帖子: 6450
注册时间: 2008-09-18 13:11

Re: 小问题,很麻烦,文件批量改名!

#7

帖子 astolia » 2010-11-05 23:35

ls的jpg和JPG弄反了。。别人是要JPG->jpg
momupa
帖子: 29
注册时间: 2010-01-11 19:49

Re: 小问题,很麻烦,文件批量改名!

#8

帖子 momupa » 2010-11-05 23:37

untitled 写了:[root@oracle test]# ls
a.jpg b.jpg
[root@oracle test]# find . -type f -name '*.jpg' -exec rename 'jpg' 'JPG' {} \;
[root@oracle test]# ls
a.JPG b.JPG
[root@oracle test]#

我这边bash运行这个是正常的。你再检查下命令

太不正常了。。。


mao@mao-desktop:~/图片/2010/11/02$ ls
IMG_1385.JPG IMG_1386.JPG IMG_1387.JPG IMG_1391.JPG
mao@mao-desktop:~/图片/2010/11/02$ find . -type f -name '*.JPG' -exec rename 'JPG' 'jpg' {} \;
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
Bareword "JPG" not allowed while "strict subs" in use at (eval 1) line 1.
mao@mao-desktop:~/图片/2010/11/02$
头像
astolia
论坛版主
帖子: 6450
注册时间: 2008-09-18 13:11

Re: 小问题,很麻烦,文件批量改名!

#9

帖子 astolia » 2010-11-05 23:45

代码: 全选

find  -name '*.JPG' -exec rename 's/JPG/jpg/'  {} \;
头像
untitled
帖子: 611
注册时间: 2008-12-18 11:47

Re: 小问题,很麻烦,文件批量改名!

#10

帖子 untitled » 2010-11-05 23:45

难道UBUNTU的rename跟CENTOS的rename不同
momupa
帖子: 29
注册时间: 2010-01-11 19:49

Re: 小问题,很麻烦,文件批量改名!

#11

帖子 momupa » 2010-11-06 0:04

astolia 写了:

代码: 全选

find  -name '*.JPG' -exec rename 's/JPG/jpg/'  {} \;
这条命令搞定了。。。我有些奇怪

怎么没加 -depth 这个参数怎么会连子目录下的后缀名都改了。
momupa
帖子: 29
注册时间: 2010-01-11 19:49

Re: 小问题,很麻烦,文件批量改名!

#12

帖子 momupa » 2010-11-06 0:05

untitled 写了:难道UBUNTU的rename跟CENTOS的rename不同
感谢帮助!
头像
帅帅的小肥
帖子: 111
注册时间: 2010-05-02 23:58
联系:

Re: 小问题,很麻烦,文件批量改名!

#13

帖子 帅帅的小肥 » 2010-11-06 17:00

:em03

代码: 全选

 sudo apt-get install purrr
我的个人博客http://lovexx.org
头像
trigger
帖子: 1604
注册时间: 2006-10-25 18:08

Re: 小问题,很麻烦,文件批量改名!

#14

帖子 trigger » 2010-11-06 17:11

批量rename的小工具很多,perl的,py的都有,不必折腾命令了
楼主真是一派胡言,真可谓:“两个黄鹂鸣翠柳,不知所云;一行白鹭上青天,不知所止“。本来不想和你辩论,今天气愤不过,和你理论一番。我国宪法写得清清楚楚:“一夜夫妻百日恩,七楼以上才有电梯”。这个想必你知道,既然知道,你就不能断章取义,就算是天气预报,它还有不准的时候呢!!!再者说了,那中国银行也不是你一家开的。人家马拉多纳都结婚了,你还拿着粮票顶什么用呢。真是滑天下之大稽。前些日子,全国人大刚刚开过会,郑重声明:“中国不搞多party制,存栏母猪给补贴”。多好的事呢,楞让你这号人给搅混了。
头像
tioover
帖子: 145
注册时间: 2008-11-22 12:19
联系:

Re: 小问题,很麻烦,文件批量改名!

#15

帖子 tioover » 2010-11-06 17:25

我是用shell的
有一个图像浏览软件好想叫g什么什么的支持,不过不会自动添后缀害得我很惨
回复