번호를 선택하는 방법은 무엇입니까?

번호를 선택하는 방법은 무엇입니까?
cat /etc/redhat-release

반품:

CentOS Linux release 5.6.1804 (Core)

방금 시도한 첫 번째 숫자를 선택하는 방법

cat /etc/redhat-release | awk '{print $4}'

이것은 나에게 응답을 제공합니다:

5.6.1804

하지만 난 첫 번째 숫자만 원해

답변1

CentOS 시스템이 이미 있거나 redhat-lsb설치 되어 있는 경우 redhat-lsb-core:

lsb_release -sr | cut -d '.' -f 1

그러면 해당 명령만 사용하여 릴리스 버전을 얻은 lsb_release다음 cut첫 번째 지점 이전의 비트를 출력합니다.

16.04Ubuntu 머신 에서 :

$ lsb_release -sr | cut -d '.' -f 1
16

답변2

사용:

awk -F '[ .]' '{print $4}' /etc/redhat-release

사용sed:

sed -E 's/[ Aa-Zz]*([0-9]+).*/\1/' /etc/redhat-release

사용grep:

grep -Eo ' [0-9]' /etc/redhat-release

답변3

$ echo 'CentOS Linux release 5.6.1804 (Core)'|awk '{print $4}'|awk -F '.' '{print $1}'
5

더 말할 필요가 있나요?

답변4

sed -Ee's/^.* ([0-9.]+) .*$/\1/' /etc/redhat-release |cut -f1,1 -d.

Sed 명령은 전체 버전 번호(AWK와 동일하므로 이를 사용할 수도 있음)를 추출하고, 두 번째 명령은 "."을 사용하여 첫 번째 필드를 추출합니다. 구분 기호로.

따라서 awk '{print $4}' /etc/redhat-release |cut -f1,1 -d를 사용할 수도 있습니다.

관련 정보