当前位置:首页 » 编程软件 » 自动清理日志脚本

自动清理日志脚本

发布时间: 2023-06-02 06:36:27

‘壹’ linux下,清除日志的脚本。帮帮忙。

#!/bin/bash
#SystemDate
date=$(date +%Y%m%d)
source_url=日志现存路径
target_url=将原日志备份的路径

cp $source_url/logname $target_url/logname_$date
cat /dev/null > $source_url/logname
原日志需要以>>方式输出到logname
例:命令>>logname&

‘贰’ Linux 系统 shell脚本定时 清空系统日志文件

其实没有必要写shell脚本,简单一句话放在系统定时任务里就行了。
比如你的日志文件名叫a.log。路径为/tmp/a.log;
那么你可以写个定时任务,这样做:crontab -e 进入定时任务器,然后把下面这段写到里面
00 02 * * * echo " " >/tmp/a.log
然后保存退出就可以了。这段内容意思是,每天凌晨2点自动清空a.log内容。你也可以自己定义多久清一次。比如想10分钟清一次,就这么写*/10 * * * * echo " " >/tmp/a.log。具体的crontab时间定义你可以去网络查查。希望对您有用!

‘叁’ shell定期删除日志脚本

脚本如下:

#!/bin/bash
# vim /etc/cron.d/backup
#Author:xxxx
#Date:20140619

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

DIR="/tmp/logs"
file_num=`find $DIR/*.log.* -mtime +1 |wc -l`
echo "have $file_num file"
find $DIR/*.log.* -mtime +1 |xargs rm -rf {} \; >/dev/null 2>&1
====================================================
上面脚本能完成你的要求

一定要照你的脚本写,没有测试,你自己修改一下,思路是这样的。
上面的直接用Find找到文件的修改时间,直接定位文件删除。

下面这个匹配文件中的名字中包含指定时间的文件,条件为真,删除。
计算加1.
你自己写的时间匹配有问题好像。

++++++++++++++++++++++++++++++++++++

tianshu=1
m=0

sj=`date +%Y%m%d -d -${tianshu}day`

for i in `ls *.log.*`
do
echo $i |grep ”$sj“ && rm -f $i
if [ $? = 0 ];then

m++
fi

done
echo $m

‘肆’ sqlServer 如何自动清理日志文件

数据库日志文件是随着时间增长而增长的,如果长时间不清理,文件会变得特别大,因此需要定期清空,但是日至文件是恢复数据库的重要依据,不用日志文件也是不明智的。手工清除单个数据库的还好说,但数据库多了,或者临时没有来得及清理,可能硬盘空间就会占满了,影响访问。因此设置自动清理数据库日志文件还是比较实用的。

手动清理方法:右键单击需要清理的数据库,选择“属性”,在“选项”卡上,把故障还原模型设定为简单,确定后关闭;再右键单击该数据库,“所有任务”-“收缩数据库”,确认后即可清除日志文件,最后记得重新选择“属性”,将故障还原模型设置为完全。

自动清理方法:利用sql server代理服务,执行自动作业。

打开企业管理器,进入“管理”-“sql server代理服务”-“作业”,在右侧窗口点击右键,选择“新建作业”。“常规”选项卡中,填写作业名称,具体

上边的数据库名称填写需要维护的数据库名称,数据库日志文件名填写其对应的日志文件名,注意,不是资源管理器里看到的带后缀名的那个名字,而是企业管理器里,数据库属性里日志选项卡中日志的名字(通常也只是差一个后缀名……),确定后添加一个作业步骤。 如果需要维护多个数据库,用上述方法重复添加作业步骤,注意每个步骤成功或失败后的动作即可,最后选择一下开始的步骤。

在“调度”选项卡中,类似备份的维护计划,填写调度周期,即定期清理的周期,不再细述。如果需要,可以在最后的“通知”选项卡上设置作业完成后的通知项,需要设置操作员,以及设置相应的服务,这里也不具体说明了,通常不用……

‘伍’ window 系统定时删除文件脚本

rem: 注释命令,只是起一个注释的作用
/p:指定要删除的目录
/s:表示递归搜索子目录
/d:-14表示14天前的文件,-7表示7天前的文件
/m: . 表示所有文件类型,如果要删除特定文件格式,可自行指定(如:只删除txt文件,可写成 *.txt )
/c:自行指定的命令,后面双引号括起来的是删除文件命令
自行指定的命令 "cmd /c del /q /f @path" 中:
/c: 表示执行完批处理命令后,关闭CMD窗口
del: 删除文件的命令
/q:安静模式。删除全局通配符时,不要求确认
/f:强制删除只读文件。

2.在弹出页面中,选择“创建基本任务”,效果如下,输入名称、描述。下一步

3.创建触发器,选择自动执行这个任务的时间频率(如每天、每星期、每月、一次性、每次启动计算机时、每次登录时等),然后单击“下一步”按钮。

4.设置此任务计划需要执行的脚本或程序(自定义脚本)。

5.点击完成,任务完成。可以在该定时任务中查看详情。

Linux:

定时清理7天前的Tomcat日志脚本

logs_path="/tomcat/tomcat-token/logs"

find $logs_path -mtime +7 -name "localhost_access_log.*.txt" -exec rm -rf {} ;

find $logs_path -mtime +7 -name "catalina.*.log" -exec rm -rf {} ;

find $logs_path -mtime +7 -name "manager.*.log" -exec rm -rf {} ;

find $logs_path -mtime +7 -name "host-manager.*.log" -exec rm -rf {} ;

find $logs_path -mtime +7 -name "fileservice.log.*" -exec rm -rf {} ;

‘陆’ linux 清除前一天日志的脚本

Linux有正常的日志的轮替,即:把现在的日志重命名然后再产生新的日志文件,可以利用这个原理来清空当前的日志文件,而不会导致以前的日志流失!这样的话你可以设置你的日志文件为每天一轮换,则当前日志文件内的信息就是今天的日志!

vi/etc/logrotate.conf 把其中的weekly或者monthly改为dayly就行!

热点内容
疯狂java视频 发布:2025-02-12 19:38:17 浏览:149
flash免费上传网站 发布:2025-02-12 19:14:03 浏览:190
买脚本一般都在哪里 发布:2025-02-12 19:08:07 浏览:823
恋舞刷分脚本se下载 发布:2025-02-12 18:56:53 浏览:8
c语言大小写转换程序 发布:2025-02-12 18:55:23 浏览:524
三星耳机坏了怎么配置 发布:2025-02-12 18:54:46 浏览:975
简易编程语言 发布:2025-02-12 18:48:07 浏览:523
咋上传视频 发布:2025-02-12 18:45:50 浏览:288
python的包机制 发布:2025-02-12 18:45:49 浏览:448
sqlserver网络实用工具 发布:2025-02-12 18:38:56 浏览:767