Błąd skryptu Bash: [i: nie znaleziono polecenia
Ten program ma przyjąć liczbę od użytkownika i wydrukować wiele liczb pierwszych. Z jakiegoś powodu program nie działa. Jestem nowym użytkownikiem skryptów bashowych i to jest mój pierwszy program. W moich oczach wszystko wydaje się być poprawne. Proszę mi powiedzieć, gdzie poszedłem źle.
<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>
To jest wyjście, które otrzymuję
<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>
Po dokonaniu sugerowanych zmian
<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>
Udało mi się uruchomić program, ale nie przyniósł żadnego rezultatu