Leia a fonte autorizada: o manual da GNU bash link
Os colchetes indicam coisas opcionais.
As únicas partes obrigatórias são: case word in esac
- este é um bash válido que não faz nada.
link MOSTRA
case word in [ [(] pattern [| pattern]...) command-list ;;]... esac
O que os colchetes indicam? Outros sites os omitem (ou seja, não há [[(]
etc.)
link mostra o seguinte:
sem uso de [[(]
etc.
case expression in
pattern1 )
statements ;;
pattern2 )
statements ;;
...
esac
Obrigado pelas respostas detalhadas abaixo. Estou extremamente agradecido pelo esclarecimento.
Leia a fonte autorizada: o manual da GNU bash link
Os colchetes indicam coisas opcionais.
As únicas partes obrigatórias são: case word in esac
- este é um bash válido que não faz nada.
Os colchetes são uma convenção comum na documentação para indicar que o que está dentro do colchete é opcional. Eles fazem parte da meta-sintaxe usada pela documentação.
A notação ...
é também metassyntax; indica que o elemento precedente pode ser repetido.
Outros metassyntax comuns incluem parênteses para agrupamento e |
para significar "ou". Aqui, acontece que os parênteses e a barra vertical fazem parte da sintaxe, enquanto os colchetes são todos parte do metasyntax.
Os bons manuais compõem a meta-sintaxe em uma fonte diferente da sintaxe. Nem a página da Web que você está lendo nem o manual do bash que ela plagia faz então na sua descrição do comando case
. O manual do bash define as palavras word
, pattern
e command-list
em itálico; isso também é metasyntax, indicando que essas palavras são uma descrição do que acontece nessa posição, em vez de as palavras serem literalmente digitadas como case
, in
e esac
.
case
palavra in
[[ (
] padrão [ |
padrão ] ... )
lista de comandos ;;
] ... esac
Tags bash documentation