在网上找了很多方法,最多的是写一个bat文件,在尝试之后发现只能批量修改前后缀,中间部分无法直接修改,索性自己用python的os模块写了一个简单的批量修改代码。
直接修改代码中的dirpath, originalname, modifyname即可
注意:可以修改当前文件下下所有文件(包括子文件夹下的文件,但是不会修改文件夹的名字)
如果要批量删除,令modifyname=""
批量修改后缀名需要在查看中开启文件拓展名,然后在originalname里输入原来的拓展名即可修改
import os
def ModifyFileName(filepath, originalname, modifyname):
''' 修改文件名内容
:param filepath: 文件路径
:param originalname: 待修改内容
:param modifyname: 修改后内容
:return: void
'''
filename = os.path.basename(filepath)
if originalname in filename:
replacename = filename.replace(originalname, modifyname)
replacepath = os.path.dirname(filepath)+'\\'+replacename
try:
os.rename(filepath, replacepath)
print(filename + " 已修改为:" + replacename)
except :
print(filename + "文件路径不存在")
def ModifyAll(dirpath, originalname, modifyname):
''' 修改文件夹内所有文件
:param dirpath: 文件夹路径
:param originalname: 待修改内容
:param modifyname: 修改后内容
:return: void
'''
for root, dirs, files in os.walk(dirpath):
for file in files:
ModifyFileName(os.path.join(root, file),originalname,modifyname)
print("已全部修改!")
if __name__ == '__main__':
#print("请输入文件夹路径:")
dirpath = "E:\桌面\新建文件夹\测试目录"
#dirpath = input()
#print("请输入需要修改的内容:")
originalname = "测试"
#originalname = input()
#print("请输入修改后的内容:")
modifyname = "修改"
#modifyname = input()
print("正在执行中~~~~~~~~~")
ModifyAll(dirpath, originalname, modifyname)
效果图
修改前
修改后