写一个程序,要求删除指定目录下超过7天的文件或文件夹并输出日志到文件
时间: 2024-02-09 13:07:58 浏览: 107
Java删除文件目录或文件代码,带日志输出
好的,这是一个Python脚本的实现方案:
```python
import os
import time
# 定义目标目录和日志文件路径
target_dir = "/path/to/target/dir"
log_file = "/path/to/log/file.log"
# 获取当前时间戳
now = time.time()
# 遍历目标目录下的文件和文件夹
for file in os.listdir(target_dir):
file_path = os.path.join(target_dir, file)
# 如果是文件夹并且创建时间超过7天,则删除文件夹
if os.path.isdir(file_path) and now - os.path.getctime(file_path) > 7 * 24 * 60 * 60:
os.system("rm -rf " + file_path)
# 记录日志
with open(log_file, "a") as f:
f.write(f"删除文件夹:{file_path}\n")
# 如果是文件并且创建时间超过7天,则删除文件
elif os.path.isfile(file_path) and now - os.path.getctime(file_path) > 7 * 24 * 60 * 60:
os.remove(file_path)
# 记录日志
with open(log_file, "a") as f:
f.write(f"删除文件:{file_path}\n")
```
需要注意的是,该脚本会直接删除文件和文件夹,所以请谨慎使用。同时,日志文件路径需要根据实际情况修改。
阅读全文