检查文件是否有更新,监控文件状态

检查文件是否有更新,监控文件状态

在工作中有时候需要会几个人同时操作同一个文件夹,但是我们有不知道哪一个文件被修改过。

这可怎么办呢?

没事儿,这不是有python吗?这可是一门万能语言,除了不会生孩子,什么都会。

那要怎么监控呢?直接上代码吧!

导入模块os,time模块

 

import os,time
dict,zdian={},{}
path="E:\\"#文件路径
def file_state(dict,path):#传入字典参数,传入需要检查的文件路径
    file=os.listdir(path)
    for path1 in file:#获取文件目录
        file_path= path +path1
        if os.path.isfile(file_path)==True:#判断是否是文件
            dict[file_path]=os.path.getmtime(file_path)
        if os.path.isfile(file_path) == False:
            file_path2 = file_path + "\"
            file_state(dict,file_path2)#递归
    return
file_state(zdian,path)
while True:
    time.sleep(3)
    file_state(dict,path)
    for i in dict:
        try:
            if dict[i]==zdian[i]:
                pass
            if dict[i] != zdian[i]:
                print(i + "有更新")
                zdian[i] = os.path.getmtime(i)
        except:
            print(i + "有更新")
            zdian[i]=os.path.getmtime(i)

 

以上就是相关的代码,编程要的是一种方法,一种思维方式,而不是代码本身,下面是我的主要思路。

1,想要判断文件是否有更新,主要检查的是文件的修改时间,修改时间变了,那说明文件有被人动过。

2,竟然知道靠什么判断了,那怎么获取?

3,时间能获取到了,那文件呢?文件里面还有文件。

4,我们发现获取文件,以及获取文件对应的修改时间,是具有相同操作性质的,那我们可重复检查文件,直到没有为止。

5,时间,文件都获取到了,怎么判断更新。

6,我们知道字典可以将文件和时间对应起来,文件是没有变动的,那就是它了,以字典的方式储存。

7,然后就是有关字典的操作。

 

了解更多,欢迎关注公众号:

检查文件是否有更新,监控文件状态

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/111427.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • linux如何查看防火墙是否开启?删除iptables规则

    linux如何查看防火墙是否开启?删除iptables规则

  • 向navicat中导入数据库时出现错误_sqlserver导入sql文件

    向navicat中导入数据库时出现错误_sqlserver导入sql文件在Navicat导出的 或者别的sql文件,在使用Navicat导入时候 出现异常失败报错问题。搜索了很多资料查看,发现是没有解决掉的。最后无意间想起使用 MySql 直接使用命令导入尝试,发现可行的简单粗暴,直接打开你的MySql 登录以后 选择 要导入的数据库use 数据库名称;source 文件的绝对路径;完事 ,坐等~…

  • origin双y轴柱状图_双Y轴柱状图和折线图

    origin双y轴柱状图_双Y轴柱状图和折线图Origin双Y轴柱状图画法及两柱重合有间居问题解决1、所遇问题2、作图方法1、所遇问题做双Y轴柱状图时,一开始是将左Y轴数据和右Y轴数据放在了两个sheet中,一顿操作最后发现两个柱要么重合要么有间距,怎么调都不行,就像下图这样。。。2、作图方法正确作图方法:1、将X数据左Y数据以及右Y数据放在一个sheet中,主要这里边的两个空列,是正确画图的关键。2、选择ABCD四列画柱状图,注意这里C列为误差,画出来图你就明白D列作用是让柱子向左偏一格。3、点击空白区域,右键加入右Y轴,也

  • sqlyog安装教程注册码_vlive安卓安装包

    sqlyog安装教程注册码_vlive安卓安装包SQLyog是啥?一款很好用的mysql客户端工具 安装包与注册码链接:中文版SQLyog,64位32位都有密码:p6xk花了我3个C币…且用且珍惜(╥╯^╰╥)听说很好用,等我用熟练了出个使用教程…

  • 卸载docker命令_删除docker0虚拟网卡

    卸载docker命令_删除docker0虚拟网卡#!/bin/shecho”startuninstallingdocker”echo”=======================================”#停止docker服务sudosystemctlstopdocker#杀死docker进程(为防止特殊情况下有残留的docker进程)#ps-ef|grepdocker|awk'{print$2}’|xargssudokill-s9#删除执行状态文件的根目录sudo…

  • 小议如何使用APPLY

    小议如何使用APPLY

    2021年11月25日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号