"""
describe:批量重命名指定目录(包含子目录)下面所有文件的后缀名
author:taozi
date:20190719
"""
import os
def batch_rename(work_dir, old_ext, new_ext):
"""
:param work_dir: 指定目录
:param old_ext: 旧文件扩展名
:param new_ext: 新文件扩展名
:return:
"""
files = os.listdir(work_dir)
print(files)
for filename in os.listdir(work_dir):
split_file = os.path.splitext(filename)
print(split_file)
file_ext = split_file[1]
if file_ext != '':
if old_ext == file_ext:
newfile = split_file[0] + new_ext
os.rename(
os.path.join(work_dir, filename),
os.path.join(work_dir, newfile)
)
else:
print('这是一个目录文件:{}'.format(filename))
work_dir_r = os.path.join(work_dir, filename)
print(work_dir_r)
batch_rename(work_dir_r, old_ext, new_ext)
if __name__ == '__main__':
work_dir = 'D:/test'
batch_rename(work_dir, '.txt', '.json')