diff --git a/check_framemd5.sh b/check_framemd5.sh index 450d620..9476fc7 100644 --- a/check_framemd5.sh +++ b/check_framemd5.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash SCRIPT=$(basename "${0}") - VERSION='2016-10-08' + VERSION='2016-10-09' AUTHOR='ffmprovisr' RED='\033[1;31m' BLUE='\033[1;34m' @@ -37,17 +37,20 @@ EOF exit 0 } +unset input_file +unset input_hash + while getopts ":hi:m:" opt; do case "${opt}" in h) _output_help ;; i) input_file=$OPTARG ;; m) input_hash=$OPTARG ;; - *) echo -e "${RED}Error:${NC }bad option -${OPTARG}" ; _output_prompt ;; :) echo -e "${RED}Error:${NC} option -${OPTARG} requires an argument" ; _output_prompt ;; + *) echo -e "${RED}Error:${NC }bad option -${OPTARG}" ; _output_prompt ;; esac done -[ -z "${@}" ] && _output_prompt +[[ -z "${#}" || ! ${input_file} || ! ${input_hash} ]] && _output_prompt echo -e "${BLUE}Please wait...${NC}" unset md5_tmp if [[ $OSTYPE = "cygwin" ]]; then @@ -56,7 +59,9 @@ else md5_tmp="${HOME}/$(basename ${input_hash}).tmp" fi $(ffmpeg -i ${input_file} -loglevel 0 -f framemd5 -an ${md5_tmp}) -[[ ! -f ${md5_tmp} ]] && _output_prompt +[[ ! -f ${md5_tmp} ]] && { echo -e "${RED}Error:${NC} '${input_file}' is not a valid audio-visual file."; _output_prompt; } +unset old_file +unset tmp_file old_file=$(grep -v '^#' ${input_hash}) tmp_file=$(grep -v '^#' ${md5_tmp}) if [[ "${old_file}" = "${tmp_file}" ]]; then