centos shell脚本:拷贝昨天压缩打包

因工作需要写一个脚本

每天备份几个文件夹里的日期是昨天的N多文件,拷贝出来,压缩,并删除昨天的数据,留着压缩包,每天都凌晨3点工作。

 

  
  
  
  
  1. #!/bin/sh 
  2.     dname1="$(date -d -1day +%Y%m%d)" 
  3.     dname2="$(date -d -4day +%Y%m%d)" 
  4.     backdir1="/usr/local/backup/xxx" 
  5.     backdir2="/usr/local/xxx/xxx" 
  6.     dir="/usr/local/xxx/xxx" 
  7.     dir1="file_info_deliver" 
  8.     dir2="file_info_deliverDisposed" 
  9.     dir3="file_info_map" 
  10.     dir4="file_info_mapDisposed" 
  11.     dir5="file_info_report" 
  12.     dir5_1="$backdir1/$dir5/$dname1" 
  13.     dir5_2="$backdir1/$dir5/" 
  14.     dir6="file_info_report_bad_bak" 
  15.     dir7="file_info_reportDisposed" 
  16.     dir7_1="$backdir1/$dir7/$dname1" 
  17.     dir7_2="$backdir1/$dir7/" 
  18.     dir8="file_info_send" 
  19.     dir9="file_info_sendDisposed" 
  20.     dir9_1="$backdir1/$dir9/$dname1" 
  21.     dir9_2="$backdir1/$dir9/" 
  22.     dir10="smgpSms" 
  23.     dir10_1="$backdir1/$dir10/$dname1" 
  24.     dir10_2="$backdir1/$dir10/" 
  25.     dir11="smgpSmsDisposed" 
  26.     dir11_1="$backdir1/$dir11/$dname1" 
  27.     dir11_2="$backdir1/$dir11/" 
  28.  
  29.  
  30.     #file_info_report 
  31.     mkdir -p $dir5_1 
  32.     cd $backdir2/$dir5 
  33.     mv $dname1*  $dir5_1 
  34.     cd $dir5_2 
  35.     tar -zcf $dname1.tar.gz $dname1 
  36.     rm -rf $dname2 
  37.  
  38.     #file_info_reportDisposed 
  39.     mkdir -p $dir7_1 
  40.     cd $backdir2/$dir7 
  41.     mv deal$dname1*  $dir7_1 
  42.     cd $dir7_2 
  43.     tar -zcf $dname1.tar.gz $dname1 
  44.     rm -rf $dname2 
  45.  
  46.     #file_info_sendDisposed 
  47.     mkdir -p $dir9_1 
  48.     cd $backdir2/$dir9 
  49.     mv deal$dname1*  $dir9_1 
  50.     cd $dir9_2 
  51.     tar -zcf $dname1.tar.gz $dname1 
  52.     rm -rf $dname2 
  53.  
  54.     #smgpSms 
  55.     mkdir -p $dir10_1 
  56.     cd $backdir2/$dir10 
  57.     mv $dname1*  $dir10_1 
  58.     cd $dir10_2 
  59.     tar -zcf $dname1.tar.gz $dname1 
  60.     rm -rf $dname2 
  61.     
  62.     #smgpSmsDisposed 
  63.     mkdir -p $dir11_1 
  64.     cd $backdir2/$dir11 
  65.     mv deal$dname1*  $dir11_1 
  66.     cd $dir11_2 
  67.     tar -zcf $dname1.tar.gz $dname1 
  68.     rm -rf $dname2 

 设置晚上3点15分执行

1.# crontab -e

然后插入

15 3 * * * /usr/local/bin/xxx.sh

你可能感兴趣的:(linux,shell,职场,脚本,休闲)