#!/bin/bash year= while getopts ":y:m:" opt do case $opt in y) year=$OPTARG ;; m) month=$OPTARG ;; ?) echo "usage: dumpdata -y=2019 -m=2" exit 1;; esac done if [ ! -n "$year" ]; then echo "no year paramerter" exit 1 fi output_change="`pwd`/dump" if [ ! -n "$month" ]; then output_path="${year}" tar_file_name="${year}".tar.bz2 else start_month=`printf "%02d" ${month}` start_year=${year} next_month=`expr ${month} + 1` if [ $next_month -gt 12 ]; then end_month="01" end_year=`expr ${year} + 1` else end_month=`printf "%02d" ${next_month}` end_year=${year} fi output_path="${start_year}_${start_month}_01-${end_year}_${end_month}_01" tar_file_name="${start_year}_${start_month}_01-${end_year}_${end_month}_01".tar.bz2 fi echo ${output_change} echo ${tar_file_name} tar czvf ${tar_file_name} -C ${output_change} ${output_path} /opt/ossutil64 cp -f ${tar_file_name} oss://mongo-history/mongodb/