1. #!/bin/bash  
  2. LOG_DIR=/opt/logs 
  3. LOG_BACK=back 
  4. PID=/opt/logs/nginx.pid 
  5. DATE=`date +%F` 
  6. DEL_DATE=`date +%F -d "15 days ago"` 
  7.  
  8. #check error 
  9. check_error(){ 
  10.     if [[ $1 != "0" ]] 
  11.     then 
  12.         echo `date +"%F %H:%M:%S" `"$2 error!" >> $LOG_DIR/$LOG_BACK/back_error.log 
  13.         exit 1 
  14.     else 
  15.         echo `date +"%F %H:%M:%S" `"$2 is ok" >> $LOG_DIR/$LOG_BACK/back_error.log 
  16.     fi 
  17.  
  18. cd $LOG_DIR 
  19. check_error $? 
  20. mkdir -p back/access 
  21. mv access.log back/access/access.log$DATE 
  22. kill -USR1 `cat  $PID`  
  23. rm -rf back/access/access.log$DEL_DATE