定期删除服务器n天前日志

删除指定目录及子目录下n天前文件

shell 复制代码
find /nas/logs/* -maxdepth 3 -type d -ctime +6 | xargs rm -rvf
  1. find /nas/logs/: 在 /nas/logs/ 目录下查找所有文件和目录。 通配符表示匹配任意文件或目录名。
  2. -maxdepth 3: 设置 find 命令的最大搜索深度为 3。这意味着 find 命令将在 /nas/logs/ 目录及其直接子目录和子目录的子目录中搜索。
  3. -type d: 限制 find 命令的搜索结果为目录。
  4. -ctime +6: 限制 find 命令的搜索结果为创建时间早于 6 天的目录。
  5. |: 管道符号,将前一个命令的输出作为后一个命令的输入。
  6. xargs: 从标准输入中读取数据,并将其作为参数传递给后续命令。
  7. rm -rvf: rm 是删除文件和目录的命令,-r 表示递归删除,-v 表示显示详细信息,-f 表示强制删除,无需确认。

centos中添加定时任务

在 CentOS 中设置定时任务通常使用 cron 服务。Cron 是一个用于在预定时间执行任务的服务,通过 cron 你可以设置系统定时执行的脚本或命令。以下是在 CentOS 中设置定时任务的基本步骤:

  1. 编辑 cron 任务

    • 使用以下命令编辑 cron 任务列表:

      bash 复制代码
      crontab -e
    • 如果是第一次编辑,系统会询问你选择一个编辑器,选择一个你熟悉的编辑器。

  2. 添加定时任务

    • 在打开的编辑器中,你可以添加你的定时任务。每个定时任务占据一行,并且遵循以下格式:

      plaintext 复制代码
      分 时 日 月 周 命令
      • 分(Minute):0-59
      • 时(Hour):0-23
      • 日(Day of month):1-31
      • 月(Month):1-12
      • 周(Day of week):0-7 (0 和 7 都代表周日)
    • 例如,如果你想每天的凌晨 1 点执行一个脚本 /path/to/your/script.sh,你可以添加如下一行:

      plaintext 复制代码
      0 1 * * * /path/to/your/script.sh
  3. 保存并退出

    • 在编辑器中保存你的修改并退出。
  4. 查看定时任务

    • 你可以使用以下命令查看当前用户的定时任务列表:

      bash 复制代码
      crontab -l
  5. 重启 cron 服务

    • 在添加或修改定时任务后,cron 服务会自动生效。如果你对 cron 服务进行了修改,你可以重启 cron 服务以确保修改生效:

      bash 复制代码
      systemctl restart crond

定时删除指定目录及子目录下n天前文件

shell 复制代码
0 1 * * * find /nas/logs/* -maxdepth 3 -type d -ctime +6 | xargs rm -rvf
# +6可修改为指定时间
相关推荐
正在学习前端的---小方同学3 小时前
Harbor部署教程
linux·运维
牛奔4 小时前
Docker Compose 两种安装与使用方式详解(适用于 Docker 19.03 版本)
运维·docker·云原生·容器·eureka
翼龙云_cloud4 小时前
阿里云渠道商:如何手动一键扩缩容ECS实例?
运维·服务器·阿里云·云计算
墨风如雪4 小时前
拒绝被找回!MJJ必修课:Outlook邮箱交易后的“防回手”安全设置全攻略
服务器
DX_水位流量监测5 小时前
大坝安全监测之渗流渗压位移监测设备技术解析
大数据·运维·服务器·网络·人工智能·安全
电商API&Tina5 小时前
京东 API 数据采集接口接入与行业分析
运维·服务器·网络·数据库·django·php
Mr_Xuhhh6 小时前
博客标题:深入理解Shell:从进程控制到自主实现一个微型Shell
linux·运维·服务器
f***24119 小时前
高效自动化管理临时文件的技术方案
运维·自动化
m0_738120729 小时前
应急响应——知攻善防靶场Linux-1详细应急过程
linux·运维·服务器·网络·web安全·ssh
obboda10 小时前
磁盘管理(MBR、LVM)
运维·5g