Shell Script For Backup Folder

本文分享了一个用于自动备份文件服务器的Shell脚本,并通过crontab实现定时任务。脚本详细记录了备份过程,包括源文件夹大小、目标文件夹大小及压缩操作。

Recently, our team file server need to auto backup, so I write this script to back via contab.

This script is very easy, I just want save it for review later.

If it can help you, I will happy.


  1. #!/bin/sh 
  2. log_path=/tmp 
  3. echo ===========Start-date=================  >> $log_path/backup.log 
  4. date                                   >> $log_path/backup.log 
  5. source_path=/tmp/liangtest/shell 
  6. folder_name=bk 
  7. target_path=/tmp/liangtest/shell2 
  8. bakup_date=`date "+%Y_%-m_%-d_%H_%M"` 
  9. echo "Backup Date ${bakup_date}"                           >>$log_path/backup.log 
  10. mkdir $target_path/${folder_name}_$bakup_date                 >>$log_path/backup.log 
  11. cp $source_path/$folder_name/*  $target_path/${folder_name}_$bakup_date 
  12. sleep 5 
  13. source_size=`du -sm $source_path/$folder_name` 
  14. target_size=`du -sm $target_path/${folder_name}_$bakup_date` 
  15. echo "source_size ${source_size}"                           >>$log_path/backup.log 
  16. echo "target_size ${target_size}"                           >>$log_path/backup.log 
  17. so=`echo $target_size|awk '{print $1;}'` 
  18. ta=`echo $target_size|awk '{print $1;}'` 
  19. if [ $so -eq  $ta ]; then 
  20.         echo "Backup Done" $bakup_date                  >>$log_path/backup.log 
  21. else 
  22.         echo "Backup Failure!!!!"                          >>$log_path/backup.log 
  23. fi 
  24. ####Starting Compress#### 
  25. echo ==========Starting Compress============    >> $log_path/backup.log 
  26. date                                        >> /tmp/backup.log 
  27. if 
  28. cd $target_path/${folder_name}_$bakup_date 
  29. tar -cvzf $target_path/${folder_name}_Compressed_$bakup_date  * 
  30. then 
  31. cd $target_path 
  32. rm -rf  $target_path/${folder_name}_$bakup_date 
  33. echo "Backup Done,Delete folder Success!!!"  $bakup_date    >>$log_path/backup.log 
  34. else 
  35. echo "Compress Failure!!!!"                                  >>$log_path/backup.log 
  36. fi 
  37. echo ===========End-date=================    >> $log_path/backup.log 
  38. date                                                      >> $log_path/backup.log 

The output for log as below


  1. ===========Start-date================= 
  2. Sun Jul 15 14:42:23 CST 2012 
  3. Backup Date 2012_7_15_14_42 
  4. source_size 2   /tmp/liangtest/shell/bk 
  5. target_size 2   /tmp/liangtest/shell2/bk_2012_7_15_14_42 
  6. Backup Done 2012_7_15_14_42 
  7. ===========Starting Compress=========== 
  8. Sun Jul 15 14:42:33 CST 2012 
  9. Backup Done,Delete folder Success!!! 2012_7_15_14_42 
  10. ===========End-date==================== 
  11. Sun Jul 15 14:42:33 CST 2012 









本文转自 hsbxxl 51CTO博客,原文链接:http://blog.51cto.com/hsbxxl/931593,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值