Quando eu estou usando como
for i in 1 2 3 4 5
então meu arquivo contém #!/bin/sh
na parte superior.
Mas quando estou usando
for(( i = 0; i<=5; i++))
então está mostrando erro
Syntax error: Bad for loop variable
e funcionando corretamente quando removo o shebang. Por favor, diga-me o motivo por trás disso.
sh
modo? Obrigado!i=0; while [ $i -le 5 ]; do echo $i; i=$((i+1)); done
para esse tipo de loop é executado apenas no shell Bash. então, se você deseja executar isso, tente este comando:
Eu acho que vai funcionar bem. e veja este também.
fonte
Eu resolvi esse problema usando o comando ./ em vez do sh. Por exemplo, se você colocar
sh test.sh
apenas faça seu comando como./test.sh
E provavelmente o problema será resolvido.fonte
Experimente, pode ser que isso possa resolver seu problema
fonte