在给定的时间范围内查找已修改的文件可以使用以下代码示例来解决:
import os
import time
def find_modified_files(start_time, end_time, directory):
# 转换时间戳为可读的时间格式
start_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(start_time))
end_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(end_time))
# 遍历目录下的所有文件和文件夹
for root, dirs, files in os.walk(directory):
for file in files:
# 获取文件的修改时间
file_path = os.path.join(root, file)
modified_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(os.path.getmtime(file_path)))
# 判断修改时间是否在给定的时间范围内
if start_time <= modified_time <= end_time:
print(file_path)
# 设置起始时间和结束时间
start_time = time.mktime(time.strptime('2022-01-01 00:00:00', '%Y-%m-%d %H:%M:%S'))
end_time = time.mktime(time.strptime('2022-01-31 23:59:59', '%Y-%m-%d %H:%M:%S'))
# 设置目录路径
directory = '/path/to/directory'
# 调用函数查找已修改的文件
find_modified_files(start_time, end_time, directory)
在上述代码中,我们首先导入了os
和time
模块来处理文件和时间相关的操作。然后,我们定义了一个名为find_modified_files
的函数,该函数接受起始时间、结束时间和目录路径作为参数。
在函数内部,我们使用os.walk
函数遍历目录下的所有文件和文件夹。对于每个文件,我们获取其修改时间并将其转换为可读的时间格式。然后,我们将修改时间与给定的起始时间和结束时间进行比较,如果在范围内,则打印文件路径。
在代码的最后部分,我们设置了起始时间、结束时间和目录路径,并调用find_modified_files
函数来查找已修改的文件。