圆月山庄资源网 Design By www.vgjia.com
在工作过程中,data目录会一直接收文件,收到的文件放到一个大目录里不好判断是否漏收,也不利于检索;
所以写了个脚本,每天早上九点用Windows计划执行,将昨日这个文件夹内收到的文件全部归档,归档文件夹的名字就是昨天的日期,脚本及解释如下:
import os import datetime import shutil # get file name def get_datetime(i): d = str((datetime.datetime.now() - datetime.timedelta(days=i)).date()).split("-") timeoffile = d[0] + d[1] + d[2] return(timeoffile) # new file def get_newfile(i): filename = get_datetime(i) aimPath = 'C:\\data\\' + filename isExists=os.path.exists(aimPath) if not isExists: os.makedirs(aimPath) print(aimPath + 'ok!') return aimPath else: print(aimPath + 'file is exists!') return False def delete_flie(filePath): for i,j,k in os.walk(filePath): n = 0 while n < len(k): fileneed = filePath + '\\' + k[n] if(os.path.exists(fileneed)): os.remove(fileneed) else: pass n = n + 1 # get file name and move def get_filename(filePath): for i,j,k in os.walk(filePath): n = 0 while n < len(k): fileneed = filePath + '\\' + k[n] if(os.path.exists(fileneed)): shutil.move(fileneed,aimPath) else: pass n = n + 1 # Monday special def is_Monday(): if datetime.datetime.now().weekday() == 0: return 3 else: return 1 filePath = 'C:\\data' pos = is_Monday() aimPath = get_newfile(pos) get_filename(filePath) delete_flie(filePath)
1.get_newfile
该函数调用get_datetime函数,获得指定日期,并按照YYYYMMDD的格式将日期拼接;
使用isExists,来对文件名是否存在进行校验,如果改文件夹不存在,则新建文件夹。
2.delete_flie
在移动结束后,删除原目录的文件;
在删除前要使用os.path.exists验证待删除文件是否存在。
3.get_filename
获取date文件夹内的文件名,并将其移动到新文件夹内;
在移动前要使用os.path.exists验证待移动文件是否存在。
4.is_Monday
周一的时候需要将周五、周六、周日的文件都放在以周五日期命名的文件夹中,所以使用这个函数来判断是星期几;
datetime.datetime.now().weekday()函数是0-6来表示周一-周五,所以值为0的时候,返回3;
这个函数的值将传给get_newfile,再调用get_datetime函数,通过控制这段的i,来控制生成的日期时间:
d = str((datetime.datetime.now() - datetime.timedelta(days=i)).date()).split("-")
注:shutil.copy会改变文件生成时间,不好对文件进行判断,所以要使用shutil.move移动文件
以上就是python实现按日期归档文件的详细内容,更多关于python归档文件的资料请关注其它相关文章!
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
更新日志
2024年11月01日
2024年11月01日
- 群星《时光正好 电视剧影视原声带》[FLAC/分轨][234.11MB]
- 英雄联盟s14韩国队种子怎么排名 s14韩国队种子队伍排名一览
- 英雄联盟s14四强开始时间 英雄联盟s14四强赛程表一览
- 英雄联盟s14四强赛在哪举办 英雄联盟s14半决赛举办地点一览
- 《三国志8重制版》全女将一览
- 《英雄联盟》Faker第七次晋级决赛
- 《历史时代3》下载方法
- EchoVocalEnsemble-Innocence(2024)[WAV]
- BuceadorVoltio-Satelite(2024)[24-48]FLAC
- VilmPribyl-SmetanaDalibor(2024)[24Bit-WAV]
- 高通骁龙8至尊版亮相:性能领先A18 Pro达到40%,更有多项首发
- 2024骁龙峰会:自研Oryon CPU登陆手机、汽车丨骁龙8至尊版、骁龙至尊版汽车平台
- 稀有度拉满!首款小马宝莉背卡引爆网络热梗
- 群星《全糖少爷1 影视原声带》[320K/MP3][98.36MB]
- 群星《全糖少爷1 影视原声带》[FLAC/分轨][420.97MB]