'''
首先,需要读取文本文件,提取源目录、目标目录和关键词。然后,遍历源目录中的文件,检查文件名是否包含关键词,如果包含,就将这些文件移动到目标目录。
使用os模块来处理文件和目录操作,以及shutil模块来执行文件的移动操作。
先打开文本文件以读取源目录、目标目录和关键词。然后,使用os.walk遍历源目录中的文件,对每个文件名进行关键词匹配,如果包含关键词就移动到目标目录。
移动文件时,使用shutil.move函数完成。最后,输出已移动的文件列表,以及任务完成的消息。
确保将实际的文本文件路径替换为你的文本文件路径,并在文本文件中正确记录源目录、目标目录和关键词。
'''
import os
import shutil
# 从文本文件中读取源目录、目标目录和关键词
with open("移动指定名文件.txt", "r") as file:
源目录 = file.readline().strip()
#print (源目录)
目标目录 = file.readline().strip()
#print (目标目录)
关键词 = file.readline().strip()
#print (关键词)
# 遍历源目录中的文件
for 源路径, dirs, 文件列表 in os.walk(源目录):
for 文件名 in 文件列表:
if 关键词 in 文件名:
# 构建源文件的完整路径和目标文件的完整路径
源文件路径 = os.path.join(源路径, 文件名)
目标路径 = os.path.join(目标目录, 文件名)
# 移动文件到目标目录
shutil.move(源文件路径, 目标路径)
print(f"Moved: {源文件路径} -> {目标路径}")
print("任务完成!")
'''
这个代码使用re.sub函数,它通过正则表达式来匹配只有一个反斜杠的情况,同时确保前面不是另一个反斜杠,以避免替换已经是双反斜杠的情况。
这将只替换那些需要替换的反斜杠,而不会影响已经是双反斜杠的部分。
'''
import re
def 修正反斜杠(文件路径):
with open(文件路径, 'r', encoding='utf-8') as 文件:
内容 = 文件.read()
修正内容 = re.sub(r'(?<!\\)\\(?!\\)', r'\\\\', 内容)
with open(文件路径, 'w', encoding='utf-8') as 文件:
文件.write(修正内容)
文件路径 = "移动指定名文件.txt" # 替换成你要处理的文件路径
修正反斜杠(文件路径)