在python脚本下面。
该脚本将前导零添加到所定义的位数。如果名称大于该名称,则文件(名称)保持不变。
在一个重命名操作中组合不同的扩展名可能会增加一些便利。要添加扩展,只需将其添加到元组,例如extensions = (".jpg", ".jpeg", ".tiff")
。
将文本复制到一个空文件中,另存为rename.py
,输入文件目录的正确路径(sourcedir
),您希望新名称具有的位数(number_ofdigits
)和要重命名的文件扩展名(extensions
)。
通过以下命令运行它:
python3 /path/to/script/rename.py
剧本:
#!/usr/bin/python3
import shutil
import os
sourcedir = "/path/to/files"; number_ofdigits = 5; extensions = (".jpg", ".jpeg")
files = os.listdir(sourcedir)
for item in files:
if item.endswith(extensions):
name = item.split("."); zeros = number_ofdigits-len(name[0])
newname = str(zeros*"0")+name[0]+"."+name[1]
shutil.move(sourcedir+"/"+item, sourcedir+"/"+newname)
编辑:
下面略有改进的版本。它会自动确定目录中最长的名称,并将前导零添加到最长名称的长度。
例:
1.jpg
12.jpg
123.jpg
变成:
001.jpg
012.jpg
123.jpg
无需设置位数。
#!/usr/bin/python3
import shutil
import os
sourcedir = "/path/to/files"; extensions = (".jpg", ".jpeg")
files = [(f, f[f.rfind("."):], f[:f.rfind(".")]) for f in os.listdir(sourcedir)if f.endswith(extensions)]
maxlen = len(max([f[2] for f in files], key = len))
for item in files:
zeros = maxlen-len(item[2])
shutil.move(sourcedir+"/"+item[0], sourcedir+"/"+str(zeros*"0")+item[0])