Erro de script de bash: [i: comando não encontrado
Este programa é suposto aceitar um número do usuário e imprimir muitos números primos. Por alguma razão, o programa não funciona. Eu sou novo no bash scripting e este é o meu primeiro programa. Aos meus olhos tudo parece estar correto. Por favor, me diga onde eu errei.
<code>echo Enter num read n i=2 j=2 for(( i=2; i <= n; i++ )) do for(( j=2; j < i-1; j++ )) do if [i % j == 0]; then break fi if [i == j]; then echo " $i" fi done done </code>
Esta é a saída que recebo
<code>Enter num 20 prime.sh: line 12: [i: command not found prime.sh: line 18: [i: command not found prime.sh: line 12: [i: command not found prime.sh: line 18: [i: command not found . . . </code>
Depois de fazer as alterações sugeridas
<code>read -p "Enter a number : " n i=2 j=2 for(( i=2; i <= n; i++ )) do for(( j=2; j <= i-1; j++ )) do if [ $(( i % j )) == 0 ] then break fi if [ i == j ] then echo " $i" fi done done </code>
Consegui rodar o programa, mas não produziu nenhum resultado