定时备份并清除系统日志的shell代码
2013-06-11 08:11
483 查看
一个备份并清除老日志Shell脚本,并附有一个清除日志(log)的shell脚本。
一、备份并清除老日志Shell脚本:
二、将脚本加入操作系统的crontab 中,直接VI加入即可
上面表示每天23:59分执行该脚本
清除日志(log)的shell脚本
一、备份并清除老日志Shell脚本:
#!/bin/sh #backup eoslog #author www.jbxue.com #定义环境变量 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
二、将脚本加入操作系统的crontab 中,直接VI加入即可
[eos@xcfwbz1 SAS]$ crontab -l 59 23 * * * /home/eos/SAS/backup_eoslog.sh
上面表示每天23:59分执行该脚本
清除日志(log)的shell脚本
#!/bin/bash #by www.jbxue.com 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
相关文章推荐
- Shell脚本定时备份清除运行系统日志的代码
- Shell脚本定时备份清除运行系统日志的代码
- linux利用shell脚本和cron实现定时备份、上传及垃圾日志清理(原创)
- Shell 定时备份日志文件
- 清除系统日志shell.
- aix系统使用定时任务每天备份清理nohup日志操作步骤
- 0306数据备份整理-【系统日志】C#代码
- shell定时清除过期日志文件
- linux利用shell脚本和cron实现定时备份、上传及垃圾日志清理(原创)
- shell脚本采用crontab定时备份数据库日志
- 使用非管理员实现系统事件日志的自动备份与清除
- AIX 定时清除日志的SHELL
- 清除系统日志的shell脚本
- 清除系统日志的Delphi代码
- Ubuntu下定时提交代码到SVN服务器的Shell脚本分享
- Linux shell crontab expdp 定时任务逻辑备份 定时删除旧文件
- Linux下mysql定时备份的脚本代码
- 命令备份系统日志信息到文档
- 自动发送密码抓取远程日志 Shell脚本实现代码
- linux系统实现数据库定时备份