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

按修改日期查找文件并列出相对路径的技术实现问询

解决方案:文件检索与相对路径输出

没问题,这两个需求用Linux的find命令就能轻松搞定,我给你详细说下具体用法:

一、按修改日期查找文件并列出相对目录

find命令自带的时间筛选参数可以精准定位修改过的文件,再配合格式化输出就能得到相对路径:

  • 查找最近N天内修改的文件:比如要找当前目录下最近7天修改过的所有文件,输出相对路径

    find . -type f -mtime -7 -printf "%P\n"
    

    解释:

    • . 指定检索的起始目录(当前目录)
    • -type f 只筛选文件(排除目录)
    • -mtime -7 表示修改时间在7天以内的文件(如果是超过30天的文件,用-mtime +30)
    • %P 是核心格式化参数,会输出文件相对于起始目录的相对路径(自动去掉开头的./)
  • 查找指定日期范围内修改的文件:比如要找2024年5月1日到5月10日之间修改的文件

    find . -type f -newermt 2024-05-01 ! -newermt 2024-05-11 -printf "%P\n"
    

    解释:

    • -newermt 2024-05-01 筛选修改时间晚于2024-05-01的文件
    • ! -newermt 2024-05-11 排除修改时间晚于2024-05-11的文件,这样就精准覆盖了5月1日到10日的范围

二、从指定父目录检索所有文件,输出相对路径

针对你给出的示例(父目录export/home/user/,文件路径export/home/user/workspace/tmp/file1.txt,期望输出workspace/tmp/file1.txt),直接用find配合%P参数就能实现:

find /export/home/user/ -type f -printf "%P\n"

解释:

  • 把起始目录指定为你的父目录/export/home/user/
  • -type f 确保只输出文件(如果需要包含目录,去掉这个参数即可)
  • %P 会自动去掉起始目录的前缀,直接输出文件相对于父目录的路径,完全符合你的需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:34:15