import os
import re
exclude_file = ".DS_Store"
special_char = r'[\\/:*?\"<>|:?]'
dir_path="/Users/lixin/图书馆/极客时间/"
def rename_file_name(dir_path):
for file_name in os.listdir(dir_path):
if(exclude_file == file_name):
continue
file_path = os.path.join(dir_path,file_name)
if True == os.path.isdir(file_path):
rename_file_name(file_path)
else:
new_file_name = filterChar(file_name)
if new_file_name != file_name:
new_file_path = os.path.join(dir_path,new_file_name)
os.rename(file_path,new_file_path)
def filterChar(old_file_name):
new_file_name = re.sub(special_char,"_",old_file_name)
return new_file_name
rename_file_name(dir_path)