分页: 1 / 1

问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-18 9:06
scrutator

代码: 全选

**:~/图片$ find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} ;
find: 缺少“-exec”参数
看到有人写这样的,我敲了返回缺少-exec的参数
帮忙说下具体怎么设置?
谢谢了~

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-18 9:35
TeliuTe
gimp有个批处理插件,直观便捷: http://teliute.org/linux/gimp/lesson13/lesson13.html

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-18 9:42
scrutator
TeliuTe 写了:gimp有个批处理插件,直观便捷: http://teliute.org/linux/gimp/lesson13/lesson13.html
3Q去装吧~
有时间,这命令我还是想研究下,有具体的介绍吗?

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-18 11:01
scrutator
TeliuTe 写了:gimp有个批处理插件,直观便捷: http://teliute.org/linux/gimp/lesson13/lesson13.html
学会了~这个文件名一样。
多谢了~挺好用的~

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-19 1:53
Ping-Wu
scrutator 写了:

代码: 全选

**:~/图片$ find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} ;
find: 缺少“-exec”参数
看到有人写这样的,我敲了返回缺少-exec的参数
帮忙说下具体怎么设置?
谢谢了~
";" 前面要加一个escape character "\",如下:

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} \;
或(较保险的做法):

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {}.resize \;

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-19 10:15
scrutator
Ping-Wu 写了:
scrutator 写了:

代码: 全选

**:~/图片$ find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} ;
find: 缺少“-exec”参数
看到有人写这样的,我敲了返回缺少-exec的参数
帮忙说下具体怎么设置?
谢谢了~
";" 前面要加一个escape character "\",如下:

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} \;
或(较保险的做法):

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {}.resize \;
谢谢,两条都可以用,第一条是覆盖源文件,第二条加resize,
要是制定一个路径需要加什么命令?
非常感谢~

Re: 问一下【find】命令批量修改图像大小怎么写

发表于 : 2017-09-19 17:17
Ping-Wu
scrutator 写了:
Ping-Wu 写了:
scrutator 写了:

代码: 全选

**:~/图片$ find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} ;
find: 缺少“-exec”参数
看到有人写这样的,我敲了返回缺少-exec的参数
帮忙说下具体怎么设置?
谢谢了~
";" 前面要加一个escape character "\",如下:

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {} \;
或(较保险的做法):

代码: 全选

find ./ -name '*.JPG' -exec convert -resize 600x480 {} {}.resize \;
谢谢,两条都可以用,第一条是覆盖源文件,第二条加resize,
要是制定一个路径需要加什么命令?
非常感谢~
可以试试这个指令(先建立一个次档案夹):

代码: 全选

mkdir resize; for img in $(ls *.JPG); do convert -resize 600x400 $img ./resize/$img; done
如果要用“find”指令的话,这个次档案夹必须放在主档案夹的外面,如下:

代码: 全选

mkdir ../resize; find ./ -name '*.JPG' -exec convert -resize 600x480 {} "../resize/"{} \;
当然啦,这个新档案夹可以用其它的路径取代。