Angenommen, ich möchte die gcc
Version vergleichen , um festzustellen, ob auf dem System die Mindestversion installiert ist oder nicht.
Um die gcc
Version zu überprüfen , habe ich Folgendes ausgeführt
gcc --version | head -n1 | cut -d" " -f4
Die Ausgabe war
4.8.5
Also schrieb ich eine einfache if
Anweisung, um diese Version mit einem anderen Wert zu vergleichen
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
Aber es wirft einen Fehler:
[: integer expression expected: 4.8.5
Ich habe meinen Fehler verstanden, dass ich zum Vergleichen Zeichenfolgen verwendet habe und die -lt
erforderliche Ganzzahl. Gibt es eine andere Möglichkeit, die Versionen zu vergleichen?
gcc -dumpversion