Python实现批量修改文件中的时间属性

news/2025/2/12 12:38:35/

在我们平时使用电脑的时候,有时候会有一种需求,需要将目录中文件的访问时间、修改时间修改为近几天。使用python语言恰好可以非常简单的实现我们的需求,将需要修改的目录复制进来即可修改,为了实现仿真性,我们可以将时间戳规定在一定的范围,不会轻易被发现。我会将打包好的exe文件上传到资源中,有需要的可以自己去下载。


如下图所示(这是修改之后的时间,将时间控制在了三天之内):
在这里插入图片描述

使用过程如下:

  • 先在文件管理器窗口复制路径
  • 然后将路径粘贴进刚才运行起来的黑窗口
  • 按下回车即可

在这里插入图片描述

开始更改:可以从下图看出程序会递归的遍历我们刚才输入进来的文件夹下的所有文件然后随机修改文件的访问时间与修改时间。
在这里插入图片描述
完整代码如下:可以根据自己的需求进行定制。

import os
import random
import time#月份字典
month_dict = {'Jau':'01','Feb':'02','Mar':'03','Apr':'04','May':'05','Jun':'06','Jul':'07','Aug':'08','Sep':'09','Oct':'10','Nov':'11','Dec':'12'}#文件路經
# filepath = 'C:/Users/123/Desktop/mysk-learn2/CatAndDog Sort/'def alertTime(filepath):viewtime=time.time()+random.randint(-7200,7200)altertime=time.time()+random.randint(-84600*2,-7200)#修改访问时间和修改时间os.utime(filepath, (viewtime, altertime))dircount=0
filecount=0
# i负责记录深度;
def deepDir(filepath,flag=0):global filecountglobal dircountfilepath+="/"file_list = os.listdir(filepath)flag+=2# 负责存放目录名称dirls=[]for tempfile in file_list:if os.path.isdir(filepath+"/"+tempfile):dirls.append(filepath+"/"+tempfile)else:filecount+=1print('-'*flag,end='')print(tempfile)alertTime(filepath+"/"+tempfile)for tempfile in dirls:dircount+=1deepDir(tempfile,flag)if __name__=="__main__":# try:dir=input('please copy your dir and paste here (Be sure to copy directly):')deepDir(dir.replace('\\','/'))print(f'completed file nums is:{filecount} and dir num is {dircount}!')# except:#     print("error!")

下面一部分代码可以自己扩展,为了获取文件的创建修改访问时间

   # fName_pre = os.path.splitext(fName)[0]# fName_pre=os.path.splitext(fName)[0]+os.path.splitext(fName)[1]or""# #获取文件的访问时间、改变时间、修改时间 filepath是文件路径# atime = time.ctime(os.path.getatime(filepath))# ctime = time.ctime(os.path.getctime(filepath))# mtime = time.ctime(os.path.getmtime(filepath))## print('访问时间:',atime)# print('改变时间:',ctime)# print('修改时间:',mtime)## #指定时间格式# format = "%Y%m%d_%H%M%S"## #转换访问时间、修改时间的内容格式# a_Y = atime[20:24]# a_m = month_dict[atime[4:7]]# a_d = atime[8:10]# a_H = atime[11:13]# a_M = atime[14:16]# a_S = atime[17:19]# Access_time = a_Y + a_m + a_d+ '_' + a_H + a_M + a_S# print('Access_time:',Access_time)## c_Y = mtime[20:24]# c_m = month_dict[mtime[4:7]]# c_d = mtime[8:10]# c_H = mtime[11:13]# c_M = mtime[14:16]# c_S = mtime[17:19]# Modified_time = c_Y + c_m + c_d+ '_' + c_H + c_M + c_S# print('Modified_time:',Modified_time)## #创建struct_time对象# atime_t = time.mktime(time.strptime(Access_time, format))# mtime_t = time.mktime(time.strptime(Access_time, format))# print(atime_t)# print(mtime_t)

为了方便平时使用,可以通过pyinstaller进行打包
在打包时遇到了报错 Failed to execute script ‘xxx‘ due to unhandled exception:input():lost sys.stdin
在这里插入图片描述
是因为在打包的时候使用了参数 -w,即无控制台窗口模式,导致需要命令行输入时无法执行并报错。
解决办法,使用打包命令: pyinstaller -F xxx.py,或写成 pyinstaller -F -c xxx.py(-c参数使用控制台子系统执行,默认方式)。


最后我将编译好的exe文件放在了CSDN资源区,如果有需求的小伙伴可以自取所需,如果有什么疑问的话欢迎评论区留言。点击传送。


http://www.ppmy.cn/news/961692.html

相关文章

ChatGPT等AI支持教师日常工作的10条实用建议

chatgpt如何支持教师日常教学工作? ChatGPT可以通过以下方式支持教师的日常教学工作: 一、 课程计划和设计 ChatGPT可以帮助教师根据课程标准和目标制定课程计划、设计活动和课堂任务。 教师如何通过ChatGPT完成课程计划和设计? 教师可以通过以下步骤使用ChatGPT来完成课程…

ChatGPT专业应用:生成各类通知

正文共 821 字,阅读大约需要 3 分钟 游戏/用户运营等必备技巧,您将在3分钟后获得以下超能力: 生成各类通知 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 | nanako 编辑者 | Linda ●…

李宏毅2023春季机器学习笔记 - 01生成AI(ChatGPT)

一、引言 预设的知识储备要求:数学(微积分、线性代数、机率);编程能力(读写python) 这门课专注在 深度学习领域deep learning, 事实上深度学习在今天的整个机器学习(ML&#xff09…

基于ChatGPT用AI实现自然对话

1.概述 ChatGPT是当前自然语言处理领域的重要进展之一,通过预训练和微调的方式,ChatGPT可以生成高质量的文本,可应用于多种场景,如智能客服、聊天机器人、语音助手等。本文将详细介绍ChatGPT的原理、实战演练和流程图&#xff0c…

从ChatGPT看人工智能

ChatGPT是2022年出来的一个对话型人工智能,ChatGPT就是这样一种可以和人类用自然语言去交流的人工智能,一上线就引发了恐慌,最厉害的地方还是它能够用人类的语言来进行交流,不管是中文、英文、日文都可以,ChatGPT有可能…

ChatGPT:原理与未来人工智能对人类的影响

随着科技的飞速发展,人工智能(AI)正成为我们日常生活中不可或缺的一部分。本文将重点介绍OpenAI开发的一款颇受欢迎的AI应用——ChatGPT,它的原理,以及未来AI将对人类产生的影响。 一、ChatGPT的原理 ChatGPT是基于GP…

ChatGPT 和生成式 AI 对科学意味着什么

来源:ScienceAI 本文约5000字,建议阅读5分钟 真的才刚刚开始。 2022 年 12 月,计算生物学家 Casey Greene 和 Milton Pividori 开始了一项不同寻常的实验:他们请一名非科学家的助手帮助他们改进三篇研究论文。他们勤奋的助手建议在…

Stable Diffusion免费(三个月)通过阿里云轻松部署服务

温馨提示:划重点,活动入口在这里喔,不要迷路了。 其实我就在AIGC_有没有一种可能,其实你早就在AIGC了?阿里云邀请你,体验一把AIGC级的毕加索、达芬奇、梵高等大师作画的快感。阿里云将提供免费云产品资源&…