首页 > 系统相关 >在Linux添加定时任务删除5天前的日志文件

在Linux添加定时任务删除5天前的日志文件

时间:2023-07-24 15:46:38浏览次数:40  
标签:文件 auto days sh 天前 Linux del 日志 txt

在Linux添加定时任务删除5天前的日志文件

利用shell脚本自动清理

1.删除文件命令:

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

实例命令:

find /usr/local/mysql/logs -type f -mtime +5 -name "*.txt" -exec rm -f {} \;

说明:

将/usr/local/mysql/logs目录下所有5天前带".log"的文件删除。具体参数说明如下:

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

/usr/local/mysql/logs:想要进行清理的任意目录;

-type f :指明类型为普通文件的文件(f 普通文件 | d 目录文件 | l 链接文件 等等)

-mtime:标准语句写法;

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

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

(签购单接口性能测试时会产生大量签购单图片,并保持在对应的目录下,导致磁盘经常被占满,自动清除前一天签购单图片,脚本中,清除的格式改为.jpg就行)

-exec:固定写法;

rm -f:强制删除文件;

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

2.计划任务:

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

2.1创建shell:

touch /usr/local/mysql/logs/auto-del-5-days-txt.sh

chmod 777 auto-del-5-days-txt.sh

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

2.2编辑shell脚本:

vi auto-del-5-days-txt.sh

编辑auto-del-5-days-txt.sh文件如下:

#!/bin/sh
find /usr/local/mysql/logs -type f -mtime +5 -name "*.log" -exec rm -f {} \;

ok,保存退出(:wq!)。

2.3计划任务:

键入 crontab -e 编辑crontab服务文件

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

输入:

10 0 * * * /usr/local/mysql/logs/auto-del-30-days-txt.sh >/dev/null 2>&1

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

 

查看该用户下的crontab服务是否创建成功, 用 crontab -l 命令

启动crontab服务

注:退出定时任务的编辑就自动生效了

一般启动服务用 /sbin/service crond start 若是根用户的cron服务可以用 sudo service crond start, 这里还是要注意 下 不同版本linux系统启动的服务的命令也不同 ,像我的虚拟机里只需用 sudo service cron restart 即可,若是在根用下直接键入service cron start就能启动服务

查看服务是否已经运行用 ps -aux | grep cron

标签:文件,auto,days,sh,天前,Linux,del,日志,txt
From: https://www.cnblogs.com/lfh-blog/p/17577376.html

相关文章

  • Linux:/etc/passwd各项含义
    学习自:/etc/passwd详解1、用途记录了所有的用户信息。2、读写所有用户均可读取该文件,但是只有超级用户才能写/etc/passwd3、内容打开文件后如下所示解释说明每行记录一个用户信息。以第一行和最后一行为例root:x:0:0:root:/root:/bin/bashtest1:x:1001:1001::/home/tes......
  • PyCharm 在PyCharm中运行Django测试的日志输出
    环境:Windows10  +PyCharm2022.3.3+ Djangoversion4.2.3via: https://docs.djangoproject.com/zh-hans/4.2/topics/logging/#configuring-logging 日志模块配置:在settings.py添加如下配置: importosLOGGING={"version":1,"disable_existi......
  • Linux ORACLE打补丁 补丁集
    ##Oracle补丁下载下载oracle补丁登入Oraclesupport网站:https://support.oracle.com/portal/查询文档编号:2118136.2, 选择需要的补丁编号,选择对应的版本,提前阅读readme和download下载opatch工具查询文档293369.1##Oracle打补丁1.上传补丁包上传至/opt下,并解压缩:p6880880......
  • Linux系列---【CentOS 7通过MSTSC连接远程桌面】
    安装对应的yum源yumlistlightdmxorgxrdpxrdp可以看到这些软件都在epel中,如果没有的话,请先安装对应的yum源。命令如下:yuminstall-yepel-release确认yum源没有问题之后,我们就可以进行安装了。安装lightdmxorgxrdpxrdplightdm提供了图形登录界面和用户会话管理......
  • 服务器linux常用命令
    [01–iostat]iostat命令显示的是你的存储系统的细节状态。你通常可以用这个命令去检测你的存储设备是否工作正常,完全可以在用户抱怨服务器慢之前,通过这个命令发现系统IO方面的问题。如下可以看到iostat既可以显示CPU使用情况,也可以看到每个磁盘的IO情况。#iostat1Linux2.6.32......
  • C# .NET core Avalonia 11.0版本,发布linux记录
    .netcore7.0+centos7.0cetnos目前运行在hyperV虚拟机里 虚拟机部署的注意事项1需要配置网络环境,  确保在同一局域网下如果sftp无法连接ctrl+shift+f2切换到命令行,开启22端口iptables-IINPUT-ptcp--dport22-jACCEPT同时虚拟机网络也要正确配置.......
  • 怎么找java项目日志输出的路径
    项目方案:Java项目日志输出路径的查找方法背景在Java项目开发过程中,日志是非常重要的一部分,可以帮助开发人员快速定位和解决问题。日志输出路径的查找方法决定了我们在开发和调试过程中如何查看和分析日志信息。本方案将介绍如何找到Java项目日志输出的路径,并提供代码示例。解决......
  • Linux系列---【linux使用sudo命令管理普通用户执行root权限】
    linux使用sudo命令管理普通用户执行root权限为什么要用sudo?sudo提供了一种安全而灵活的方式,让普通用户在需要时以root用户的身份执行特权操作,同时也提供了更好的管理和安全性。通过合理配置sudoers文件,可以确保只有受信任的用户能够执行特权操作,从而保护系统的完整性和安......
  • linux安装源码包指定安装目录【转载】
    本文来自博客园,作者:阿弱,转载请注明原文链接:https://www.cnblogs.com/aruo/p/15771915.html当下载完一个源码包并且解压后文件夹下会有一个重要的文件configureconfigure文件是一个可执行的脚本文件,它将检查目标系统的配置和可用功能,比如一些检查依赖或者启用禁用一些模块,它有......
  • android studio打印日志过长显示补全
    AndroidStudio打印日志过长显示补全实现步骤作为一名经验丰富的开发者,我将向你介绍如何在AndroidStudio中实现打印日志过长时的显示补全功能。这个功能可以帮助你更方便地查看和调试长日志信息。实现步骤下面是整个实现过程的步骤概览。我们将逐步进行操作,确保你能够完全了解......