Fazendo algum processamento de mídia aqui:
case "$3" in
all)
:
;;
[a-z][a-z][a-z])
if [ "$2" == "subtitles" ]; then switches="$switches -s $3"
if [ "$2" == "audio" ]; then switches="$switches -a $3"
;;
*)
printf 'Invalid language code for language (should be 3-letter ISO-639 or "all"): %s\n' "$2"
exit 1
;;
esac
Isso é para garantir que $3
haja all
ou 3 letras entre az. Meu problema é que *
meu comando falha se $3
estiver vazio. Se eu removê-lo, posso continuar, mas não posso ter certeza de que $3
há all
ou 3 letras entre az.
Como posso corrigir esse problema?
Use o padrão
para corresponder a um
all
ou a uma string vazia.