find命令删除指定N天前的文件

1、find ./ -name "*.txt" -exec mv "{}" "{}a" \;

批量修改当前目录下.txt文件的后缀名改为.txta

2、find ./ -name "*.log"  mtime +30 -exec rm -f "{}" \;

删除当前目录更改时间为30天以前,以.log结尾的文件,其中+30表示距今30天前,-30表示至今30天内

解释:

-exec参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠\。

{}花括号代表前面find查找出来的文件名。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候e...
    架构飞毛腿阅读 2,948评论 0 0
  • 摘要:·find path -option [ -print ] [ -exec -ok command ] {}...
    暖夏未眠丶阅读 3,480评论 0 0
  • which 查看可执行文件的位置 命令格式:which 可执行文件名称 命令功能:which指令会在PATH变量指...
    upupSue阅读 3,971评论 0 1
  • 模仿
    DrDancy阅读 1,306评论 3 1
  • 犬儒主义是不是精神解脱之道? 听了四十几分钟,剩下了明天听。 用本质思维来概括,执中说:接受现实是精神解脱之道 玄...
    FrankFFj阅读 1,670评论 0 0