osc/research/jd_data/scripts/rename-file.py
2025-05-28 19:16:17 +08:00

33 lines
1.1 KiB
Python

import sqlite3
import os
target_dirs = ['21762830', '21762848', '13011134', '21284967', '21316608', '11920416']
def rename_file(file_path, source_name, target_name, counter):
os.rename(file_path + '/' + source_name, file_path + '/' + target_name)
print(f'[{counter}] 目录 {file_path} 的文件 {source_name} 改名为 {target_name}')
db_conn = sqlite3.connect('F:/data.dtu.dk/scripts/name_dict.db')
db_cursor = db_conn.cursor()
for dir in target_dirs:
counter = 0
file_name_mapping = {}
SQL_SELECT = f"SELECT dl_name, full_name FROM name_dict WHERE root_path = '{dir}';"
db_cursor.execute(SQL_SELECT)
exe_result = db_cursor.fetchall()
for _result in exe_result:
dl_name = _result[0]
full_name = _result[1]
file_name_mapping[dl_name] = full_name
target_path = os.path.join('F:/data.dtu.dk', dir)
file_list = os.listdir(target_path)
for _file in file_list:
counter += 1
if _file in file_name_mapping:
rename_file(target_path, _file, file_name_mapping[_file], counter)
db_cursor.close()
db_conn.close()