Renaming all files in a directory changes all filenames in a folder. The new filenames can follow a template or pattern, but each file must have a unique name.
# names in your directory
import os
import re
import shutil
os.chdir(r'C:\Users\Zeroblog\Desktop\old_folder')
dest_dir = r"C:\Users\Zeroblog\Desktop\new_folder"
print(os.getcwd())
for f in os.listdir():
f_name, f_ext = os.path.splitext(f)
old_num = re.search('geek(.+?).zeroblog_', f_name)
new_num = int(old_num.group(1)) + 3
new_file_name = re.sub(str(old_num.group(1)), str(new_num).zfill(3), f_name)
new_name = '{}{}'.format(new_file_name.strip(), f_ext)
#os.rename(f, os.path.join(dest_dir, new_name))
shutil.copy(f, os.path.join(dest_dir, new_name))
print(f, " ... ", os.path.join(dest_dir, new_name))
print("done!")
0 Comments