Teste decimal do shell Bash [duplicado]

5

Meu shell é bash e eu tenho três variáveis x = 5; y = 7; z = 7,5

Estou tentando usar a instrução abaixo para testar a igualdade das variáveis $ y e $ z, conforme mostrado abaixo

Comando: test $z -eq $y; echo $?

Mas, mostra o seguinte erro e não consigo resolvê-lo.

-bash: test: 7.2: integer expression expected

2

Nota : quando eu aplico o mesmo comando de teste nos inteiros $ xe $ y, eles funcionam bem.

    
por AngiSen 04.09.2016 / 16:59

1 resposta

5

Você pode usar o operador == de bc .

test "$(echo $x == $z |bc)" -eq 1

expr1 == expr2
The result is 1 if expr1 is equal to expr2.

- do homem bc (1)

    
por 04.09.2016 / 17:19