#!/bin/bash FONT_COLOR=(31 32 33 34 35 36) function cow_says() { font_index=$((RANDOM % ${#FONT_COLOR[@]})) echo -en "\033[0;${FONT_COLOR[${font_index}]};5m" echo -en "${DO_RESET}" } function pretty_print() { echo -e "${NORM_CYN}$(date '+%Y-%m-%d %H:%M:%S') ${DO_RESET}${1}${DO_RESET}" } function date_range() { dt=${1} if [ "${#dt}" = 17 ] && [[ "${dt}" =~ [0-9]{8}-[0-9]{8} ]]; then start_day=${dt:0:8} end_day=${dt:9:16} elif [ "${#dt}" = 9 ] && [[ "${dt}" =~ [0-9]{8}- ]]; then start_day=${dt:0:8} if [ "$(uname)" = "Linux" ]; then end_day=$(date -d '-1 day' +%Y%m%d) else end_day=$(date -v-1d +%Y%m%d) fi elif [ "${#dt}" -ge 17 ] && [[ "${dt}" =~ [0-9]{8},[0-9]{8}[,[0-9]{8}]* ]]; then DATE_RANGE=(${dt//,/ }) return else DATE_RANGE=("${dt}") return fi DATE_RANGE=("${start_day}") while [ "${start_day}" -lt "${end_day}" ]; do if [ "$(uname)" = 'Linux' ]; then start_day=$(date -d "1 day ${start_day}" +%Y%m%d) else start_day_ts=$(date -j -f %Y%m%d "${start_day}" +%s) start_day_ts=$(("${start_day_ts}" + 86400)) start_day=$(date -r ${start_day_ts} +%Y%m%d) fi DATE_RANGE+=("${start_day}") done } function waiting() { while true; do echo -en "\r\033[J请稍候." sleep 0.5 echo -en "\r\033[J请稍候.." sleep 0.5 echo -en "\r\033[J请稍候..." sleep 0.5 echo -en "\r\033[J请稍候...." sleep 0.5 echo -en "\r\033[J请稍候....." sleep 0.5 echo -en "\r\033[J请稍候......" sleep 0.5 done }