Linux使用Shell脚本定时清理日志

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux使用Shell脚本定时清理日志

一、删除指定时间文件命令:

/data/lydms-util-sms/logs/目录下所有30天前带.log的文件删除

find /data/lydms-util-sms/logs/ -mtime +30 -name "*.log" -exec rm -rf {} \;

说明:

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

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

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

-mtime:标准语句写法;

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

"*.log":希望查找的数据类型,"*.log"表示查找扩展名为jpg的所有文件.

-exec:固定写法;

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

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

二、计划任务:

1、创建shell文件

创建可执行shell文件

touch /data/shell/bin/del-30-days-ago-log.sh

添加文件可运行权限

chmod +x /data/shell/bin/del-30-days-ago-log.sh

2、shell文件中添加脚本
vim /data/shell/bin/del-30-days-ago-log.sh

打开创建的文件后,添加下面的数据。

#!/bin/sh
find /data/lydms-util-sms/logs/ -mtime +30 -name "*.log" -exec rm -rf {} \;
3、添加系统计划任务:

打开系统定时任务文件

crontab -e

将shell文件,添加到系统定时任务中

0 0 * * * /data/shell/bin/del-30-days-ago-log.sh

三、可能出现问题

1、超过运行时间,没有执行

没有将.sh文件设置为可执行文件

添加文件可运行权限

chmod +x /data/shell/bin/del-30-days-ago-log.sh
2、保存系统定时任务文件出现问题

(1)、空格问题

多一个空格,或者少一个空格。

(2)、corn表达式问题

采用5位corn表达式。

# 文件格式說明
#  ——分鐘(0 - 59)
# |  ——小時(0 - 23)
# | |  ——日(1 - 31)
# | | |  ——月(1 - 12)
# | | | |  ——星期(0 - 7,星期日=0或7)
# | | | | |
# * * * * * 被執行的命令

从第一个开始分别为分、时、日、月、星期。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
19天前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
58 1
|
5天前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
20 2
6种方法打造出色的Shell脚本
|
24天前
|
Web App开发 网络协议 Linux
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
这篇文章是关于Linux命令的总结,涵盖了从基础操作到网络配置等多个方面的命令及其使用方法。
52 1
linux命令总结(centos):shell常用命令汇总,平时用不到,用到就懵逼忘了,于是专门写了这篇论文,【便持续更新】
|
10天前
|
监控 网络协议 Shell
ip和ip网段攻击拦截系统-绿叶结界防火墙系统shell脚本
这是一个名为“小绿叶技术博客扫段攻击拦截系统”的Bash脚本,用于监控和拦截TCP攻击。通过抓取网络数据包监控可疑IP,并利用iptables和firewalld防火墙规则对这些IP进行拦截。同时,该系统能够查询数据库中的白名单,确保合法IP不受影响。此外,它还具备日志记录功能,以便于后续分析和审计。
35 6
|
7天前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
监控 Shell Linux
linux实现shell脚本监控磁盘内存达到阈值时清理catalina.out日志
linux实现shell脚本监控磁盘内存达到阈值时清理catalina.out日志
291 0
|
1月前
|
监控 Unix Shell
shell脚本编程学习
【10月更文挑战第1天】shell脚本编程
60 12