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

简介: 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日志并进行多维度分析。
目录
相关文章
|
29天前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
81 1
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
51 0
|
14天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
|
25天前
|
关系型数据库 MySQL Linux
linux特定服务日志
Linux系统的服务日志在`/var/log`目录下,如系统日志(`/var/log/syslog`或`/var/log/messages`)、认证日志(`/var/log/auth.log`)、SSH日志(`/var/log/auth.log`或`/var/log/secure`)。Web服务器(Apache和Nginx)的访问和错误日志、MySQL错误日志、Postfix及Dovecot邮件服务器日志也在此处。日志位置可能因发行版和服务配置而异,不确定时可查服务配置或用`grep`搜索。使用`logrotate`可管理日志文件大小。
22 6
|
29天前
|
运维 监控 安全
linux日志分析与追踪
在Linux中,日志分析涉及检查 `/var/log` 下的不同文件,如`messages`、`auth.log`、`kern.log`等,以及Web服务器和数据库日志。使用`tail`、`grep`、`awk`等工具实时查看和搜索日志,`logrotate`管理日志大小,`journalctl`处理Systemd日志,而`Splunk`等工具则用于集中式分析。分析技巧包括异常检测、时间关联和阈值监控。安全事件追踪结合登录失败日志、网络嗅探和IDS/IPS。日志链路追踪在分布式系统中尤为重要,帮助定位服务调用问题。有效的日志管理和分析能增强系统安全和故障排除能力。
24 7
|
1月前
|
XML 运维 监控
【深入探究 C++ 日志库清理策略】glog、log4cplus 和 spdlog 的日志文件管理策略
【深入探究 C++ 日志库清理策略】glog、log4cplus 和 spdlog 的日志文件管理策略
68 0
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
【Shell 命令集合 系统管理 】Linux 实时监控日志文件 swatch命令 使用指南
36 1
|
6月前
|
Unix Shell Linux
|
1月前
|
Shell Linux C语言
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
Linux中执行Shell的函数(popen,system,exec)介绍:分享一些常用的执行Shell的函数及其相关编程技巧和经验
32 0