需求:遍历一个文件夹,将其中修改日期在2015-02-01——2015-02-20之间的文件拷贝出来,并且拷贝出来的文件要保持原来的目录结构。
实现代码(python3.3):
# encoding: utf-8 import os import shutil import time time0 = "2015-02-01"#起始日期 time1 = "2015-02-20"#结束日期 targetDir = "D:\\game"#目标目录 print("正在处理,请稍等.....") curDir = os.getcwd() for root, dirs, files in os.walk(curDir): #先创建目标目录 curFolder = root[len(curDir)+1:] #提取当前文件夹 tempTargetDir = os.path.join(targetDir, curFolder) #生成目标目录绝对路径 # print(tempTargetDir) if os.path.exists(tempTargetDir): shutil.rmtree(tempTargetDir) #再拷贝文件 t0 = time.mktime(time.strptime(time0, "%Y-%m-%d")) t1 = time.mktime(time.strptime(time1, "%Y-%m-%d"))+3600*24 for fileName in files: absFileName = os.path.join(root, fileName) if os.path.splitext(absFileName)[1] != '.py' and os.path.getmtime(absFileName) >= t0 and os.path.getmtime(absFileName) <= t1: if not os.path.exists(tempTargetDir): os.makedirs(tempTargetDir) print("正在拷贝文件:", absFileName) shutil.copy(absFileName, tempTargetDir) os.system("pause")
使用:将文件放到目标文件夹,双击即可。
原文地址:http://blog.csdn.net/risemypassion/article/details/43529711