linux删除超过指定天数的文件

拈花ヽ惹草 提交于 2020-04-07 05:40:01
当前位置: Home / linux删除超过指定天数的文件

linux删除超过指定天数的文件

发布时间: 2017-10-09

场景

现在流行的云服务器自身所附带的硬盘大小是小的,如阿里云是按大小增量收费。不过通常我们也是将程序代码部署到云服务器作为一个应用服务器,也不会将云服务器当成一个文件服务器来用。
这就有一个问题,我们的日志文件,该如何保存。有些访问频繁的接口/页面很快就会将自身的磁盘给填充满。如何解决这种问题,又保证日志文件不丢失?网上一搜就会有很多解决方案。
以前见过有人将日志文件定期同步到dropbox,腾讯的微云网盘号称T级别。题外话了,本文主要介绍,如何删除已经同步过的旧文件。

如何定位旧文件

find ./ -mtime +30 -name "*.gz" | xargs ls -ltrh

上条命令主要功能是查询当前目录下时间超过30天.gz结束所有文件名,并将其信息打印出来。关于find -mtime的详细用法,可以百度下。

 

如:我们需要查找出nginx日志目录下,超过30天的.gz扩展名的所有文件

对比一下/var/log/nginx下所有文件,可以发现上条命令的确把30天以内的文件都过滤了。

删除文件

find ./ -mtime +30 -name "*.gz" | [sudo] xargs rm -f

根据权限情况,选择是否需要sudo

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!