linha 7: [: echo: expressão inteira esperada

1

Este é meu primeiro script para o Shell / Bash e estou lutando com a sintaxe. O primeiro argumento da linha de comando é uma string, enquanto o segundo é o número.

x='echo $1|wc -m'
count=0
while
        [ $count -le $x ]                         #line 7
do
        count=$(( $count+1 ))
        echo $1
done
if
        [ $2 -lt 0 ]
then
        echo 'Negative'
else
        echo 'Positive'
fi
    
por Jonathan Lee 26.04.2014 / 05:25

1 resposta

3

Deve ser:

x=$(echo "$1" | wc -m)

ou:

x='echo "$1" | wc -m'

Você citou o subcomando para não executá-lo.

    
por 26.04.2014 / 08:23

Tags