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

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

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

这可怎么办呢?

没事儿,这不是有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,然后就是有关字典的操作。

 

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

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

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微信开放平台 微信登录-扫码登录[通俗易懂]

    微信开放平台 微信登录-扫码登录[通俗易懂]需求:后台需要添加微信扫码登录,要求能跟小程序用户绑定,同步用户信息。

    2022年5月15日
    64
  • .net mvc5_mvc工作流程

    .net mvc5_mvc工作流程作者:josh-jw介绍我们可以在web页面用HTML表格元素定义WebGrid显示数据,它以非常简单的方式呈现表格数据,支持自定义格式列,分页,排序,并通过AJAX异步更新。WebGrid主要属性:Source-数据来自哪里。通常情况下,通过controlleraction传递modelDefaultSort-定义如何将数据排序。只要在这里提供列名。RowsPerPage-每页表格显示…

    2022年10月1日
    1
  • Python爬虫入门这一篇就够了「建议收藏」

    Python爬虫入门这一篇就够了「建议收藏」何谓爬虫所谓爬虫,就是按照一定的规则,自动的从网络中抓取信息的程序或者脚本。万维网就像一个巨大的蜘蛛网,我们的爬虫就是上面的一个蜘蛛,不断的去抓取我们需要的信息。爬虫三要素抓取分析存储基础

    2022年7月6日
    21
  • 在eclipse上修改tomcat内存大小

    在eclipse上修改tomcat内存大小

    2021年7月16日
    53
  • 媒体类型mediaType

    媒体类型mediaType媒体类型决定浏览器将以何种形式对资源进行解析。常见的媒体格式类型(/)如下:text/html:HTML格式text/plain:纯文本格式image/gif:gif图片格式application/pdf:pdf格式application/octet-stream:二进制流数据(如常见的文件下载)…复制代码主要的使用场景如下:HTTP头部的ContentType、伪协议的data:Content-TypeContent-Type实体头部用于指示资源的MIME类型mediatype。

    2022年5月26日
    34
  • vbs刷屏代码。复制粘贴即可用

    Dimname,msgname=”请输入要刷屏的文字:”msg=Inputbox(“请输入要刷屏文字(在刷屏期间不要将光标移出聊天框,不然会打开光标所在的程序)”)SetWshShell=WScript.CreateObject(“WScript.Shell”)WshShell.AppActivate”无标题记事本”num=20sleeptime=400…

    2022年4月6日
    170

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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