Shell脚本定期清空大于1G的日志文件_linux shell

一个关于如何在指定文件大于1GB后,自动删除的问题。
批处理代码如下:

复制代码 代码如下:

#!/bin/bash
# 当/var/log/syslog大于1GB时
# 自动将其备份,并清空
# 注意这里awk的使用
if ! [ -f /var/log/syslog ]
then
echo "file not exist!"
exit 1
fi
if [ `ls -l /var/log/syslog|awk '{print $5}'` -gt $((1024*1024)) ]
then
cat /var/log/syslog >> ~/log/history # 将日志备份
echo >> ~/log/history # 增加一个空行
date >> ~/log/history # 记录时间
echo "-------------------------------------" >> ~/log/history
echo > /var/log/syslog # 清空
fi

时间: 2024-09-29 07:06:21

Shell脚本定期清空大于1G的日志文件_linux shell的相关文章

Shell脚本定期清空大于1G的日志文件

  这篇文章主要介绍了Shell脚本定期清空大于1G的日志文件,本文直接给出实现代码,需要的朋友可以参考下 一个关于如何在指定文件大于1GB后,自动删除的问题. 批处理代码如下: 代码如下: #!/bin/bash # 当/var/log/syslog大于1GB时 # 自动将其备份,并清空 # 注意这里awk的使用 if ! [ -f /var/log/syslog ] then echo "file not exist!" exit 1 fi if [ `ls -l /var/log

Shell脚本切割tomcat的日志文件_linux shell

鉴于在调试logback和log4j的文件切割一直无法成功,随性用shell写个脚本用来切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的话,可以留下使用方式,先谢谢了) 1:废话少说,直接贴上脚本: #!/bin/sh log_dir=/var/log/tomcat monitor_file=$1 #tomcat目录下的catalina.out文件的绝对路径 file_size=`du $monitor_file | awk '{print $1}'` if

Shell脚本编程中常用的数学运算实例_linux shell

这部分主要讨论数学相关的shell脚本编程. 加法运算 新建一个文件"Addition.sh",输入下面的内容并赋予其可执行的权限. 复制代码 代码如下: #!/bin/bash echo "Enter the First Number: " read a echo "Enter the Second Number: " read b x=$(expr "$a" + "$b") echo $a + $b =

shell脚本实现监控shell脚本的执行流程及变量的值_linux shell

很多时候,我们都会写shell程序来完成一些不用重复造轮子的时刻,但是,又因为shell语句中也会有函数,也会有变量,在运行后到底执行了哪些相关的操作,就需要对具体执行过程中的变量等可变的因素的监控,那么我们下面就写个小小的shell例子,来完成这个对执行过程中条件语句中的变量的变化的监控和整个程序的执行流程的观察. shell程序代码: 复制代码 代码如下: #!/bin/bash function setlogfile {     if ! [ -z "$1" ]; then   

Shell脚本定时备份清除运行系统日志的代码_linux shell

一.写备份并清除老日志Shell脚本: 复制代码 代码如下: #!/bin/sh#backup eoslog#author rhao#date 2008-12-27 #定义环境变量EOS_HOME=/home/eosSAS_HOME=/home/eos/SAS # 测试主辅结点if test -d '/home/eos/SAS/SAS1_web1'then        SAS_LOG_HOME=$SAS_HOME/SAS1_web1/SAS_Domain/binelse        SAS_

Shell脚本实现的阳历转农历代码分享_linux shell

闲来无事,想在Linux下用shell写一个阳历转农历的脚本,断断续续大概一个星期终于搞定.现在拿出来与大家分享. 1.缘由 本脚本实现原理是查表法(因为公式有误差):基于农历新年为基准,对农历新年前后两个不同的农历进行计算. 写这个脚本之前是想在Linux 终端命令提示符中加入阳历及农历日期.在Ubuntu中有Lunar软件可以获取农历日期,但在Fedora或CentOS中并没有类似软件,所以就想自己来实现一个,但网上用其他语言写的一大把,如果再写没什么必要.所以就想用shell来写一个. 2

shell脚本结合iptables防端口扫描的实现_linux shell

网上有现在的防端口工具如psad.portsentry但觉得配置有点麻烦且服务器不想再装一个额外的软件.所以自己就写了个shell脚本实现这个功能.基本思路是使用iptables的recent模块记录下在60秒钟内扫描超过10个端口的IP并结合inotify-tools工具实时监控iptables的日志一旦iptables日志文件有写入新的ip记录则使用iptables封锁源ip起到了防止端口扫描的功能. 1.iptables规则设置新建脚本iptables.sh执行此脚本. 复制代码 代码如下

Shell脚本检查IP格式及mysql操作实例_linux shell

还是cronjob的一部分,就是在Rails的定时任务里,后台交互运行 CheckIPAddress() { echo $1 |grep "^[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}$" > /dev/null if [ $? = 1 ]; then return 1 else a=`echo $1 | awk -F. '{print $1}'` b=`echo $1 | awk -F. '{print $2}'

Shell脚本实现C语言代码行数统计_linux shell

写了一个比较粗糙的C语言代码行数统计脚本,目前还有些bug,而且效率也不高.脚本主要就是去除大部分的注释后统计行数,相当于做了一部分预处理的工作.下面是代码: #!/bin/bash filename=$1 echo "`whoami`" if [ $# -lt 1 ];then echo "usage : ./scripts filename" exit -1 fi if [ ! -f $filename ];then echo "$filename i