服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Linux自动删除n天前日志及实例命令

Linux自动删除n天前日志及实例命令

2022-07-28 09:36q28229449 Linux

这篇文章主要介绍了Linux自动删除n天前日志及实例命令,需要的朋友可以参考下

1.删除文件命令:

find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;

实例命令:

?
1
find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \;

说明:

将/opt/soft/log/目录下所有30天前带".log"的文件删除。具体参数说明如下:

find:linux的查找命令,用户查找指定条件的文件;

/opt/soft/log/:想要进行清理的任意目录;

-mtime:标准语句写法;

+30:查找30天前的文件,这里用数字代表天数;

"*.log":希望查找的数据类型,"*.jpg"表示查找扩展名为jpg的所有文件,"*"表示查找所有文件,这个可以灵活运用,举一反三;

-exec:固定写法;

rm -rf:强制删除文件,包括目录;

{} \; :固定写法,一对大括号+空格+\+;

2.计划任务:

若嫌每次手动执行语句太麻烦,可以将这小语句写到一个可执行shell脚本文件中,再设置cron调度执行,那就可以让系统自动去清理相关文件。

2.1创建shell:

?
1
2
touch /opt/soft/bin/auto-del-30-days-ago-log.sh
chmod +x auto-del-30-days-ago-log.sh

新建一个可执行文件auto-del-30-days-ago-log.sh,并分配可运行权限

2.2编辑shell脚本:

?
1
vi auto-del-30-days-ago-log.sh

编辑auto-del-30-days-ago-log.sh文件如下:

?
1
2
#!/bin/sh
find /opt/soft/log/ -mtime +30 -name "*.log" -exec rm -rf {} \;

ok,保存退出(:wq)。

2.3计划任务:

#crontab -e

将auto-del-30-days-ago-log.sh执行脚本加入到系统计划任务,到点自动执行

输入:

?
1
10 0 * * * /opt/soft/log/auto-del-7-days-ago-log.sh >/dev/null 2>&1

这里的设置是每天凌晨0点10分执行auto-del-7-days-ago-log.sh文件进行数据清理任务了。

完成以上三步,你就再也不每天惦记是否硬盘空间满了,该清理日志文件了,再也不会受到服务器硬盘空间不足的报警信息了,放心的去看书喝咖啡去吧!

每次添加完任务后,一定记得重新启动crond服务,不然不会生效

代码如下: 

service crond restart

创建你的第一个Shell脚本

1.写一个脚本

a) 用touch命令创建一个文件:touch my_script

b) 用vim编辑器打开my_script文件:vi my_script

c) 用vim编辑器编辑my_script文件,内容如下:

?
1
2
3
#!/bin/bash           告诉shell使用什么程序解释脚本
#My first script
ls -l .*

2.允许Shell执行它

chmod 755 my_script

 

3.执行my_script脚本

./my_script

总结

以上所述是小编给大家介绍的Linux自动删除n天前日志,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://blog.csdn.net/qq_28229449/article/details/82995964

延伸 · 阅读

精彩推荐
  • Linuxlinux下添加自定义脚本到开机自启动的方法

    linux下添加自定义脚本到开机自启动的方法

    我的机器有个coreseek服务,但是没加到开启启动中去,导致机房一旦重启了机器,我的服务便不能使用了。所以我需要把coreseek的searchd加到自启动服务中去...

    叶剑峰20092019-11-06
  • LinuxLinux环境ActiveMQ部署方法详解

    Linux环境ActiveMQ部署方法详解

    这篇文章主要介绍了Linux环境ActiveMQ部署方法,较为详细的分析了Linux环境下ActiveMQ的部署方法,并附带说明了linux安装jdk的相关操作步骤,需要的朋友可以参考下...

    学习笔记6667192021-08-02
  • Linux16个 Linux系统方面的在线工具类网站

    16个 Linux系统方面的在线工具类网站

    有一些网站是每个Linux爱好者都应该收藏起来的。这些网站不仅仅只是教程或回顾,更是可以随时随地访问并与他人共享的实用工具。今天我会建议一份包...

    Linux教程网2642019-10-30
  • LinuxLinux下为不使用SSH的用户提供SFTP服务环境

    Linux下为不使用SSH的用户提供SFTP服务环境

    这篇文章主要介绍了Linux下为不使用SSH的用户提供SFTP服务环境的方法,一般来说SFTP协议的使用大多在提供SSH的软件内进行,而本文则介绍在非SSH环境下的方法...

    卓小呆的博客5362019-06-30
  • LinuxLinux下常用的一些解压缩命令汇总

    Linux下常用的一些解压缩命令汇总

    这篇文章主要介绍了Linux下常用的一些解压缩命令汇总,本文分别讲解了tar、tar.gz、tgz、bz2、tar.bz2、Z、rar、ZIP等格式的压缩文件解压缩命令方法,需要的朋友...

    Linux教程网2522019-09-29
  • Linux详解Linux系统的systemd启动过程

    详解Linux系统的systemd启动过程

    这篇文章主要介绍了详解Linux系统的systemd启动过程,Systemd主要被用来管理进程,并且缩短系统的引导时间,本文正是在探究其运行的原理,需要的朋友可以参考...

    开源中文社区6582019-10-09
  • Linux如何设置Linux桌面环境 实现HiDPI显示支持的方法

    如何设置Linux桌面环境 实现HiDPI显示支持的方法

    Linux不支持Retina(视网膜)屏幕的Macbook,如果我们在支持HiDPI的屏幕下运行Linux,做哪些调整,才能让Linux桌面环境看起来更加舒服些呢? 解决方法请参考下...

    Linux教程网5042019-10-30
  • LinuxLinux里隐藏的计算器,你知道它的奥秘吗?

    Linux里隐藏的计算器,你知道它的奥秘吗?

    大家都知道,windows下有个计算器工具,我们在工作生活中经常使用到它。但是,你可知Linux下也同样有个计算器吗?...

    今日头条4242020-09-20