Você precisa de espaços em ambos os lados dos caracteres [
e ]
, pois são comandos, não operadores.
Você também não precisa de let
e precisa ler dec
como variável (ou seja, $dec
).
Você também pode colocar em maiúsculas a variável apenas para o teste, portanto, não é necessário testar os resultados superiores (duas vezes!) e minúsculos.
Você também não precisa do done
no final, já que não há loop.
read dec
if [[ "${dec^}" = "Y" ]]; then
repeat=1
else
repeat=0
fi