maketar.sh 1020 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #!/bin/bash
  2. year=
  3. while getopts ":y:m:" opt
  4. do
  5. case $opt in
  6. y)
  7. year=$OPTARG
  8. ;;
  9. m)
  10. month=$OPTARG
  11. ;;
  12. ?)
  13. echo "usage: maketar -y=2019 -m=2"
  14. exit 1;;
  15. esac
  16. done
  17. if [ ! -n "$year" ]; then
  18. echo "no year paramerter"
  19. exit 1
  20. fi
  21. if [ ! -n "$month" ]; then
  22. echo "no month paramerter"
  23. exit 1
  24. fi
  25. output_change="`pwd`/backup"
  26. start_month=`printf "%02d" ${month}`
  27. start_year=${year}
  28. next_month=`expr ${month} + 1`
  29. if [ $next_month -gt 12 ]; then
  30. end_month="01"
  31. end_year=`expr ${year} + 1`
  32. else
  33. end_month=`printf "%02d" ${next_month}`
  34. end_year=${year}
  35. fi
  36. output_path="${start_year}_${start_month}_01-${end_year}_${end_month}_01"
  37. tar_file_name="${start_year}_${start_month}_01-${end_year}_${end_month}_01".tar.bz2
  38. echo ${output_change}
  39. echo ${tar_file_name}
  40. rm -f ${tar_file_name}
  41. tar czvf ${tar_file_name} -C ${output_change} ${output_path}
  42. /opt/ossutil64 cp -f ${tar_file_name} oss://mongo-history/mongobackup/