作者: 134333.xyz
目录结构是这样的
A文件夹>B文件夹>文件
目的
- 将 A 目录下的 B 目录里面的文件全部重命名为
id
开头,然后将文件移动到NewA
目录下的 B 目录。
- 将 A 目录下的 B 目录里面的文件全部重命名为
import shutil
import time
import atexit
import os
# 旧目录
path = r"D:\code\demo\python\demo\A"
# 新目录
newPath = r"D:\code\demo\python\demo\NewA"
# 切换工作目录
os.chdir(path)
start = time.time()
atexit.register(lambda: print('用时(秒):', time.time() - start))
def main():
# i 是 A文件夹下的目录名称
for i in os.listdir():
# B目录的绝对路径
abs_B = os.getcwd() + '\\'+i
# 开始遍历B目录, j 是B目录下的文件名
for j in os.listdir(abs_B):
# 判断 New B目录是否存在
if (os.path.exists(newPath+'\\'+i) == False):
os.mkdir(newPath+'\\'+i)
# 判断文件是否以id开头, 如果是则直接移动到新目录
if (j.find('id') != -1):
shutil.move(abs_B+'\\'+j, newPath + '\\' + i+'\\'+j)
else:
shutil.move(abs_B+'\\'+j, newPath + '\\' + i+'\\'+'id'+j)
# 如果原本B目录为空则删除文件夹
if (len(os.listdir(abs_B)) == 0):
shutil.rmtree(abs_B)
print('已删除文件夹: ' + abs_B)
else:
print('删除失败: ' + abs_B)
main()