檢查檔案是否有更新,監控檔案狀態

2021-08-26 05:57:44 字數 1375 閱讀 7824

在工作中有時候需要會幾個人同時操作同乙個資料夾,但是我們有不知道哪乙個檔案被修改過。

這可怎麼辦呢?

沒事兒,這不是有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,然後就是有關字典的操作。

利用Http狀態碼檢查網頁內容是否更新

這個狀態碼就是304 not modified 對於這個 的解釋是 如果客戶端傳送了乙個帶條件的 get 請求且該請求已被允許,而文件的內容 自上次訪問以來或者根據請求的條件 並沒有改變,則伺服器應當返回這個狀態碼 很明顯通過這個解釋,我們就明白了其實現的機理。我們要做的事情,僅僅是在傳送請求時將上...

Linux Bash指令碼檢查檔案 資料夾是否存在

在bash裡,可以使用test來判斷檔案 資料夾是否存在,格式如下 test expression expression expression 兩個括號會比較常用,不過都可以試試 檢查檔案是否存在 file opt test.txt if f file then echo file exists.f...

c 檢查檔案是否被開啟

using system.io using system.runtime.interopservices 首先引用api 函式 dllimport kernel32.dll private static extern intptr lopen string lppathname,int ireadw...