Parece que a forma atual de obter informações através do read
está errada, então a matemática está sendo feita em nada, então você acaba sem resposta. Você simplesmente precisa corrigir esse aspecto e o restante do código deve funcionar.
Como ler
Um trecho do seu código postado original mostra que você estava tentando salvar o primeiro número assim:
echo "Enter the first number"
read $num1
Em vez disso, tente usar -p
para o prompt e nomeie a variável num
sem cifrão. Você pode até mesmo testar o seguinte read -p ...
em seu prompt de comando, assim você verá:
$ read -p "Enter the first number" num1
Enter the first number:
Agora digite 1:
$ read -p "Enter the first number" num1
Enter the first number: 1
Agora, se você for para echo $num1
, verá o valor com êxito:
$ echo $num1
1
-
-p the_prompt_text
é uma maneira de incluir um prompt - em comparação com
echo
,echo
acrescenta um retorno de linha no final. Mas como-p
não, é uma boa ideia ter um espaço em branco extra como eu fiz, observe depois dos dois pontos:
, eu tenho um espaço:"Enter the first number: "
. Isto é apenas para que a entrada do usuário não apareça diretamente contra o cólon. - ao especificar variáveis para salvar a resposta, a sintaxe correta com leitura é não ter o
$
, portanto tivemosread
e, em seguida,num1
Então, com isso, você deve conseguir adaptar as read
partes do seu script e isso funcionará bem.