引言
注意:后来我发现了一个PC端的选图神器“FastStone Image Viewer”,用它查看Raw原图时,它显示的是文件里内嵌的JPG快照所以加载速度很快,这两年除了让朋友远程选图我已经很少再用这个脚本。
不过它还是能用于一些新旧不同后缀名文件对比整理的场合,比如某项目的图标资源包要逐步从JPG换成PNG,每次增加几个新的图片换个路径放进资源包后,可以用这个脚本把旧图片自动找出来删掉。就是里面表征前后两种文件名后缀的常量字符串需要替换一下。
来自图片处理的需求:
喜欢摄影的都懂,修图之前的选图也很麻烦,尤其是当原图体积太大时,挑图片时电脑反应会比较迟钝,而且远程选图时传RAW原图让别人选即麻烦又不用户友好,所以选片时有时需要用缩图后的jpg文件(快照)。
但基于选好的快照去找原图又很麻烦,要一张一张找,一不小心就盯错行。
解决方案:
所以花了好半天功夫写了这个脚本:
- 把挑好的快照文件放进文件夹,运行脚本之后,所有没有对应快照的源文件会被放进一个叫“files to delete”的子文件夹,有快照的源文件仍留在原地。这样后续的文件管理就比较好办了。
脚本使用方法:
1.安装python 3
-
官网下载python3.0系列(https://www.python.org)
-
下载3.0以上的任意版本的“Windows x86 web-based installer”并进行安装
2.新建一个TXT文件,拷入下面代码后保存,并将后缀名改为".py"
代码:
#!/usr/bin/ env python
#coding=UTF-8
import os, shutil
import sys
#*************** 脚本说明: ***************
#脚本作用是以文件名和后缀类型为判断依据,把没有快照文件的文件移动到待删除目录,不会直接删文件
#不支持文件名相同但内容不同的情况
#对脚本所在文件夹内的所有嵌套子目录生效
#*************** 使用方法: *************** by:BryanGG
# 环境要求:Windows + 已经安装3.0及以上版本的python
# 1.把本脚本放在待整理文件的同级或父文件夹内
# 2.根据需要修改脚本内的文件名后缀常量(注意是大小写敏感的):
# fileToKeep = ".jpg" #快照文件后缀
# fileToDel = ".CR2" #源文件文件后缀
# 3.用格式转换软件把源文件转换成快照,保证其文件名相同后缀不同,放进脚本所在文件夹内
# 4.删除不需要的快照
# 5.用python集成进鼠标右键的“Edit with IDLE”打开脚本,按F5运行
delNum = 0
keepNum = 0
#函数shouldDel:若待某删类型的文件在字典里找不到对应快照,则返回True
def shouldDel(fileName, dictName, echoOn, countOn):
global delNum
global