gcc
시스템에 최소 버전이 설치되어 있는지 여부를 확인하기 위해 버전 을 비교하고 싶다고 가정 하십시오.
gcc
버전 을 확인하기 위해 다음을 실행했습니다.
gcc --version | head -n1 | cut -d" " -f4
출력은
4.8.5
그래서이 if
값을 다른 값과 비교 하여 간단한 진술을 작성했습니다.
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
그러나 오류가 발생합니다.
[: integer expression expected: 4.8.5
나는 문자열을 사용하여 비교하고 -lt
정수 가 필요 하다는 나의 실수를 이해했다 . 그렇다면 버전을 비교하는 다른 방법이 있습니까?
@ 123 아무 일도 일어나지 않습니다
—
Abhimanyu Saharan
버전 문자열을 비교하기위한 여러 가지 제안이 있는 스택 오버플로 질문 도 있습니다.
—
n.st
파이프를 사용하는 것보다 훨씬 간단합니다 :
—
Victor Lamoine
gcc -dumpversion