Python時間交叉檢查
您可以使用Python的os和datetime模塊來實現(xiàn)這個任務。以下是一個示例代碼,可以實現(xiàn)讀取目錄中的所有pcap文件的創(chuàng)建時間和最后更新時間,并檢查它們是否與給定的時間范圍重疊、包含或交叉。
import os
import datetime
# 設置目錄路徑
dir_path = "/path/to/pcap/files"
# 獲取目錄下所有pcap文件的文件名
pcap_files = [f for f in os.listdir(dir_path) if f.endswith('.pcap')]
# 遍歷所有pcap文件并檢查時間戳
for pcap_file in pcap_files:
? ?file_path = os.path.join(dir_path, pcap_file)
? ?# 獲取文件創(chuàng)建時間和最后修改時間
? ?created_time = datetime.datetime.fromtimestamp(os.path.getctime(file_path))
? ?modified_time = datetime.datetime.fromtimestamp(os.path.getmtime(file_path))
? ?# 檢查文件時間是否與給定時間范圍重疊、包含或交叉
? ?start_time = datetime.datetime(2022, 1, 1, 0, 0, 0) ?# 給定時間范圍開始時間
? ?end_time = datetime.datetime(2022, 12, 31, 23, 59, 59) ?# 給定時間范圍結束時間
? ?if start_time <= created_time <= end_time or start_time <= modified_time <= end_time:
? ? ? ?print(f"{pcap_file} 時間與給定時間范圍重疊")
? ?elif created_time < start_time and modified_time > end_time:
? ? ? ?print(f"{pcap_file} 時間包含給定時間范圍")
? ?elif created_time < end_time and modified_time > start_time:
? ? ? ?print(f"{pcap_file} 時間與給定時間范圍交叉")
在上述代碼中,我們首先使用os.listdir()方法獲取目錄下所有以.pcap結尾的文件名,并遍歷它們以獲取它們的創(chuàng)建時間和最后修改時間。然后,我們將給定的時間范圍設置為2022年的整個年份,并將其存儲在start_time和end_time變量中。最后,我們使用if/elif語句檢查每個pcap文件的創(chuàng)建時間和最后修改時間是否與給定時間范圍重疊、包含或交叉,并打印相應的消息。
標簽: