O erro está nas linhas em que você incrementa COUNTER
. O símbolo $
é usado quando você quer cancelar a referência do nome de uma variável para obter seu valor. Não é usado quando você atribui um valor à variável. Essas linhas devem ler:
COUNTER=$(( $COUNTER + 1 ))
e
COUNTER=0
Além disso, como o comando case
está dentro do loop while
, suponho que você queira avisar o usuário novamente se ele inserir um valor inválido. Se for assim, você também deve colocar a instrução read
dentro do loop while
.