비디오 파일을 MP4로 변환하기 위해 Bash를 사용하여 Linux 용 쉘 스크립트를 작성하고 있습니다. 이를 위해 오디오 avconv
와 함께 사용 하고 libvorbis
있습니다.
내 스크립트 안에 사용자에게 질문이 있습니다.
read -p "- Audio Quality [scale from -2 to 10] ? "
if [ -n "$REPLY" ] ; then
ABITRATE="-aq $REPLY"
fi
내 "ABITRATE"문자열이 최종 avconv
명령 줄에 들어갑니다 .
그러나 사용자에게 Kb (킬로 비트) 값으로 해당 질문에 대답하고 libvorbis
사용 하는 척도로 변환 할 수있는 기회를 제공하고 싶습니다 . "-2에서 10까지의 척도"는 다음과 같습니다.
Quality Kbit/s Normalization
-----------------------------
-2 ~32 y
-1 ~48 y
0 ~64 y
1 ~80 y
2 ~96 y
3 ~112 y
4 ~128 n
5 ~160 n
6 ~192 n
7 ~224 n
8 ~256 n
9 ~320 n
10 ~500 n
$ REPLY가 숫자 범위에 있는지 확인하는 방법을 알고 싶습니다. 예를 들어 스크립트에서 다음과 같은 작업을 수행하려고합니다.
if [ $REPLY is a number between 1 and 32 ] ; then
REPLY="-2"
elif [ $REPLY is a number between 33 and 48 ] ; then
REPLY="-1"
fi
이것이 가능합니까 ( '물론 예, 어렵지 않아야합니다'라고 말하고 싶지만 사용할 구문을 모르겠습니다)?