Chinaunix首页 | 论坛 | 博客
  • 博客访问: 93848
  • 博文数量: 30
  • 博客积分: 55
  • 博客等级: 民兵
  • 技术积分: 160
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-21 19:24
文章分类

全部博文(30)

文章存档

2012年(30)

我的朋友

分类:

2012-04-21 19:57:35

原文地址:check_backup.sh检查 作者:ning_lianjie

  1. #!/bin/bash
  2. # This program is ...
  3. # scriptname: check_backup.sh

  4. set -e
  5. set -u
  6. TIME_YM=`date +%Y%m`
  7. TIME_DAY=`date +%d`
  8. DIR_BACKUP='/tmp/backup'
  9. DIR_LOG="$DIR_BACKUP/log"
  10. LOG="$DIR_BACKUP/log/check_backup.$TIME_YM$TIME_DAY.log"
  11. MAIL='XX@XX.com'

  12. if [ ! -d $DIR_LOG ]; then
  13. mkdir -p $DIR_LOG
  14. fi
  15. #show hosts
  16. echo "check host's list"|tee -a $LOG
  17. ls -1 $DIR_BACKUP|tee -a $LOG
  18. #显示backup目录下面的所有文件
  19. #list file
  20. echo "byte filename"|tee -a $LOG
  21. for HOSTNAMES in ` ls $DIR_BACKUP|xargs `
  22. do
  23. DIR_TODAY="$DIR_BACKUP/$HOSTNAMES/$TIME_YM/$TIME_DAY"
  24. if [ -e $DIR_TODAY ]; then
  25. cd $DIR_TODAY
  26. echo "****** $HOSTNAMES"|tee -a $LOG
  27. ls * -l|gawk '/gz/||/cnf/ {printf "%-20s %s\n",$5,$9}' |tee -a $LOG
  28. #关键部分,gawk,printf格式化字符串
  29. else
  30. echo "****** $HOSTNAMES"|tee -a $LOG
  31. echo "Hostname: $HOSTNAMES" without the latest backup files |tee -a $LOG
  32. fi
  33. done
  34. #send mail
  35. if [ -r $LOG ]; then
  36. cat $LOG |mail -s check_backup_status $MAIL
  37. else
  38. echo "backup is error" |mail -s backuperror $MAIL
  39. fi
  40. #把日志内容通过邮件发送.
阅读(831) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~