修改文件名字,删除指定大小的文件一记
2018-01-07 20:42
267 查看
因为SD卡损坏,用windows自带的chkdsk命令恢复后,文件都变成了 CHK后缀的名字,有些恢复的文件是不需要的。
rename 's/\.CHK/\.jpeg/' *
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1370.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1371.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1372.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1373.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1263.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1264.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1265.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1266.jpeg
find . -size 32768c -exec rm {} \;
find . -size 65536c -exec rm {} \;
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M |xargs ls -l {}
ls: cannot access {}: No such file or directory
-rw------- 1 wlia wlia 24281088 8月 9 17:06 ./3.jpeg
-rw------- 1 wlia wlia 24281088 8月 9 17:06 ./4.jpeg
-rw------- 1 wlia wlia 24281088 8月 9 16:53 ./FILE1729.jpeg
awk的结果为空
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M | awk -F . '{print $1}'
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M | awk -F '.' '{print $1}'
原因是这里
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M
./3.jpeg
./4.jpeg
./FILE1729.jpeg
要加上 -printf %f\\n
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n
3.jpeg
4.jpeg
FILE1729.jpeg
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n | awk -F . '{print $1}'
3
4
FILE1729
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n | awk -F . '{print $1}' | xargs -i{} mv {}.jpeg {}.CR
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ ll
total 78464
drwx------ 1 wlia wlia 464 8月 9 17:10 ./
drwx------ 1 wlia wlia 655360 8月 9 16:56 ../
-rw------- 1 wlia wlia 24281088 8月 9 17:06 3.CR
-rw------- 1 wlia wlia 24281088 8月 9 17:06 4.CR
-rw------- 1 wlia wlia 24281088 8月 9 16:53 FILE1729.CR
-rw------- 1 wlia wlia 6848512 8月 9 16:53 FILE2301.jpeg
最好的做法还是用file判断文件类型
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ file FILE1729.CR
FILE1729.CR: Canon CR2 raw image data, version 2.0
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ file FILE2301.jpeg
FILE2301.jpeg: JPEG image data, EXIF standard
rename 's/\.CHK/\.jpeg/' *
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1370.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1371.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1372.jpeg
-rw------- 1 wlia wlia 32768 8月 8 23:06 FILE1373.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1263.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1264.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1265.jpeg
-rw------- 1 wlia wlia 65536 8月 8 23:06 FILE1266.jpeg
find . -size 32768c -exec rm {} \;
find . -size 65536c -exec rm {} \;
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M |xargs ls -l {}
ls: cannot access {}: No such file or directory
-rw------- 1 wlia wlia 24281088 8月 9 17:06 ./3.jpeg
-rw------- 1 wlia wlia 24281088 8月 9 17:06 ./4.jpeg
-rw------- 1 wlia wlia 24281088 8月 9 16:53 ./FILE1729.jpeg
awk的结果为空
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M | awk -F . '{print $1}'
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M | awk -F '.' '{print $1}'
原因是这里
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M
./3.jpeg
./4.jpeg
./FILE1729.jpeg
要加上 -printf %f\\n
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n
3.jpeg
4.jpeg
FILE1729.jpeg
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n | awk -F . '{print $1}'
3
4
FILE1729
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ find . -size +10M -printf %f\\n | awk -F . '{print $1}' | xargs -i{} mv {}.jpeg {}.CR
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ ll
total 78464
drwx------ 1 wlia wlia 464 8月 9 17:10 ./
drwx------ 1 wlia wlia 655360 8月 9 16:56 ../
-rw------- 1 wlia wlia 24281088 8月 9 17:06 3.CR
-rw------- 1 wlia wlia 24281088 8月 9 17:06 4.CR
-rw------- 1 wlia wlia 24281088 8月 9 16:53 FILE1729.CR
-rw------- 1 wlia wlia 6848512 8月 9 16:53 FILE2301.jpeg
最好的做法还是用file判断文件类型
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ file FILE1729.CR
FILE1729.CR: Canon CR2 raw image data, version 2.0
wlia@wlia-8540w:/media/wlia/TOSHIBA EXT/2015-8-8-company/test$ file FILE2301.jpeg
FILE2301.jpeg: JPEG image data, EXIF standard
相关文章推荐
- perl-指定目录下面修改某文件的名字及修改此文件中的内容
- Linux下批量删除空文件或者删除指定大小的文件
- PowerShell匹配文件删除N天前或指定日期(前后)创建(或修改)的文件
- pycharm2017.2.1中的修改工程文见列表的名字的字体大小以及文件列表的背景颜色
- linux shell 脚本 历史文件清理脚本,按天,按月,清理前N天的历史文件,删除指定大小历史文件,历史文件归档清理
- 删除沙盒指定格式文件和获取沙盒总容量大小
- js动态创建fileupload控件,js判断上传文件的大小,超过指定的大小删除掉
- 用批处理删除N天前或指定日期时间(前后)创建(或修改)的文件
- Linux或者MAC下查找指定目录下的所有指定名字的文件并删除的命令
- 查看表空间文件以及利用率、修改、删除表空间文件大小
- 获取文件夹大小以及删除指定目录下文件及目录
- C#小方法- IO:删除文件夹下指定名字的文件
- 删除指定文件夹下小于指定大小的全部文件
- Linux下删除空文件,删除指定大小的文件
- 用PowerShell删除N天前或指定日期(前后)创建(或修改)的文件
- shell删除指定日期之前修改过的文件
- python 删除指定目录下的指定名字的文件
- shell 创建多个指定大小的文件,循环删除指定大小文件
- Linux 脚本删除大于指定大小的文件
- 小工具---修改.shp文件,删除指定属性的要素(gdal, boost库)