源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2022-12-09 11:37 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Shell脚本定时备份清除运行系统日志的代码
[b]一、写备份并清除老日志Shell脚本: [/b]
[u]复制代码[/u] 代码如下:
#!/bin/sh #backup eoslog #author rhao #date 2008-12-27 #定义环境变量 EOS_HOME=/home/eos SAS_HOME=/home/eos/SAS # 测试主辅结点 if test -d '/home/eos/SAS/SAS1_web1' then         SAS_LOG_HOME=$SAS_HOME/SAS1_web1/SAS_Domain/bin else         SAS_LOG_HOME=$SAS_HOME/SAS2_web1/SAS_Domain/bin fi # 定义并创建日志备份目录 SAS_LOG_BAK_HOME=$EOS_HOME/saslog/ mkdir -p $SAS_LOG_BAK_HOME # 切换目录为EOS日志文件目录 cd $SAS_LOG_HOME # 获取当前系统日期 TODAY=`date +%Y%m%d` # 备份当前日志 cp nohup.out $SAS_LOG_BAK_HOME/$TODAY.log # 清除当前日志 touch nohup.null cp nohup.null nohup.out -f rm nohup.null # 清除七天前的日志 for rmfile in `find $SAS_LOG_BAK_HOME -ctime +7 `;         do /bin/rm -rf $rmfile; done
[b]二、将脚本加入操作系统的crontab 中,直接VI加入即可 [/b]
[u]复制代码[/u] 代码如下:
[eos@xcfwbz1 SAS]$ crontab -l 59 23 * * * /home/eos/SAS/backup_eoslog.sh
上面表示每天23:59分执行该脚本 [b]清除日志(log)的shell脚本[/b]
[u]复制代码[/u] 代码如下:
#!/bin/bash LOG_DIR=/var/log ROOT_UID=0 LINES=50 E_XCD=66 E_NOTROOT=67 if [ "$UID" -ne "$ROOT_UID" ] then echo "Must be root to run this script." exit $E_NOTROOT fi if [ -n "$1" ] then lines=$1 else lines=$LINES fi cd $LOG_DIR if [ `pwd` != "$LOG_DIR" ] then echo "Can't change to $LOG_DIR." exit $E_XCD fi tail -$lines messages > mesg.temp mv mesg.temp messages echo "Logs cleaned up." exit 0
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部