Suponha que eu queira comparar a gcc
versão para ver se o sistema possui a versão mínima instalada ou não.
Para verificar a gcc
versão, executei o seguinte
gcc --version | head -n1 | cut -d" " -f4
A saída foi
4.8.5
Então, escrevi uma if
declaração simples para comparar esta versão com outro valor
if [ "$(gcc --version | head -n1 | cut -d" " -f4)" -lt 5.0.0 ]; then
echo "Less than 5.0.0"
else
echo "Greater than 5.0.0"
fi
Mas gera um erro:
[: integer expression expected: 4.8.5
Eu entendi meu erro que eu estava usando seqüências de caracteres para comparar e -lt
requer número inteiro. Então, existe alguma outra maneira de comparar as versões?
gcc -dumpversion