You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何从指定目录中筛选含new且日期匹配当前日期的文件

Python实现方案

实现逻辑分为三步:遍历目标目录下的文件、筛选文件名包含new的条目、对比文件名中的日期与当前日期是否匹配。

完整代码

import os
import re
from datetime import datetime

# 配置项
TARGET_DIR = "/home/user_name/files/"
DATE_PATTERN = r"\d{4}-\d{2}-\d{2}"

# 获取当前格式化日期
current_date = datetime.today().strftime("%Y-%m-%d")
result = []

for file_name in os.listdir(TARGET_DIR):
    # 跳过子目录,只处理文件
    file_full_path = os.path.join(TARGET_DIR, file_name)
    if not os.path.isfile(file_full_path):
        continue
    # 筛选包含new的文件
    if "new" not in file_name:
        continue
    # 提取文件名中的日期
    date_match = re.search(DATE_PATTERN, file_name)
    if not date_match:
        continue
    # 日期匹配则加入结果
    if date_match.group() == current_date:
        result.append(file_name)

# 输出匹配结果
print(result)

说明

  • 用正则提取日期的写法兼容性更强,不受文件名前后其他字段变动的影响
  • 如果你的文件名格式固定为xxx_new_日期.log,可以把正则提取部分替换为字符串分割,性能更高:
    # 替换正则匹配的代码段
    file_date = file_name.split("_")[-1].rstrip(".log")
    
  • 运行时如果当前日期为2021-09-17,输出结果为['First_new_2021-09-17.log', 'Last_new_2021-09-17.log'],符合预期。

内容的提问来源于stack exchange,提问作者Padfoot123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 01:18:01