Advertisement
Guest User

Untitled

a guest
Apr 28th, 2015
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 2.47 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. PARAM_FILE=$1
  4. DATE_HOUR=$( date "+%Y%m%d_%Hh%M" )
  5.  
  6. LOG_OUTPUT=${HOME}/erreur_script_transfert_ftp_"${DATE_HOUR}"
  7.  
  8. if [ ! -f ~/tomcat/${PARAM_FILE} ]
  9. then
  10.     echo "il faut specifier un fichier de conf" >& ${LOG_OUTPUT}
  11.     exit 1
  12. fi
  13.  
  14. perl -pi -e "s/\r//g"  ~/tomcat/${PARAM_FILE}
  15.  
  16. CONF_FILE=~/tomcat/${PARAM_FILE}
  17.  
  18. ftpserver=$( grep ^ftpserver ${CONF_FILE} | cut -d'=' -f2  )
  19. ftpdir=$( grep ^ftpdir ${CONF_FILE} | cut -d'=' -f2  )
  20. ftpuser=$( grep ^ftpuser ${CONF_FILE} | cut -d'=' -f2 )
  21. ftppassword=$( grep ^ftppassword ${CONF_FILE} | cut -d'=' -f2 )
  22. ftpmode=$( grep ^ftpmode ${CONF_FILE} | cut -d'=' -f2 )
  23. zipdir=$( grep ^zipdir ${CONF_FILE} | cut -d'=' -f2 )
  24. logdir=$( grep ^logdir ${CONF_FILE} | cut -d'=' -f2 )
  25.  
  26. if [ "x${ftpuser}" = "x" -o "x${ftppassword}" = "x" -o "x${ftpserver}" = "x" -o "x${zipdir}" = "x" -o "x${logdir}" = "x" ]
  27. then
  28.     echo "il manque une ou des variables" >& ${LOG_OUTPUT}
  29.     exit 1
  30. fi
  31.  
  32. if [ "x${ftpmode}" == "xA" ]
  33. then
  34.     OPTION_PASSIVE="set ftp:passive-mode off;"
  35. fi
  36.  
  37. LOGFILE=~/tomcat/${logdir}/log_ftp_${DATE_HOUR}.txt
  38. log_lftp_debug=~/tomcat/${logdir}/log_lftp_debug_${DATE_HOUR}.txt
  39. #lftp_args="set net:max-retries 5 ; set net:reconnect-interval-base 30 ; set net:reconnect-interval-multiplier 2 ; set net:reconnect-interval-max 580 ; set net:timeout 10 ; set xfer:rate-period 10; set xfer:eta-period 10 ; set net:limit-rate 1048576 "
  40. lftp_args="${OPTION_PASSIVE} set net:max-retries 5 ; set net:reconnect-interval-base 30 ; set net:reconnect-interval-multiplier 2 ; set net:reconnect-interval-max 580 ; set net:timeout 10 ; set xfer:rate-period 10; set xfer:eta-period 10 ; set ftp:ssl-allow no "
  41.  
  42. mkdir -p ~/tomcat/${logdir}/
  43.  
  44. echo "debut du transfert : $( date -R )" >> ${LOGFILE}
  45.  
  46. if [ "x${ftpdir}" = "x" ]
  47. then
  48.     ftpdir="."
  49. fi
  50.  
  51. echo "nb de fichiers a transmettre : $( find ~/tomcat/${zipdir}/ -type f | wc -l )" >> ${LOGFILE} 2>&1
  52. du -h ~/tomcat/${zipdir}/ >> ${LOGFILE} 2>&1
  53.  
  54.  
  55. lftp -u "${ftpuser}","${ftppassword}" -e "debug -o ${log_lftp_debug} 10 ; ${lftp_args} ; mput -O ${ftpdir} ~/tomcat/${zipdir}/* ; quit " "${ftpserver}" >> ${LOGFILE} 2>&1
  56.  
  57. RET=$?
  58.  
  59. if [ "x${RET}" != "x0" ];
  60. then
  61.     echo "ERROR:FTP lftp error return code ${RET}" >> ${LOGFILE} 2>&1
  62. fi
  63.  
  64. echo "DEBUT du log debug de lftp:" >> ${LOGFILE} 2>&1
  65. cat ${log_lftp_debug} >> ${LOGFILE} 2>&1
  66. rm -f ${log_lftp_debug} >> ${LOGFILE} 2>&1
  67. echo "FIN du log debug de lftp:" >> ${LOGFILE} 2>&1
  68.  
  69. echo "fin du transfert : $( date -R )" >> ${LOGFILE}
  70.  
  71. exit ${RET}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement