我创建了以下行,以验证Linux版本(如Red Hat 5.X或4.X等)

我认为我的电话线太长,不够优雅

awk -F"release" '{print $2}'  /etc/redhat-release | awk '{print $1}' | sed s'/\./ /g' | awk '{print $1}'

5

测试:
$ LINUX_VERSION=` awk -F"release" '{print $2}'  /etc/redhat-release | awk '{print $1}' | sed s'/\./ /g' | awk '{print $1}' `
$ echo $LINUX_VERSION
5

也许有人可以给出更优雅的方式来打印Linux版本?
$ more /etc/redhat-release
Red Hat Enterprise Linux Server release 5.4 (Tikanga)

最佳答案

不解析文件。让RedHat系统版本实践告诉您您想要什么。请参阅releasever中有关man yum.conf的文档。

运行rpm -qf --qf '%{version}\n' /etc/redhat-release
如果您真的只需要数字(即使在正式发行版为5Server5Client的情况下),那么您也可以使用以下代码:

v=$(rpm -qf --qf '%{version}\n' /etc/redhat-release)

echo "${v%%[a-zA-Z]*}"
# or
echo "$v" | grep -o '^[0-9]*'
# or
echo "$v" | tr -d 'a-zA-Z'

或其他您喜欢的东西。

关于linux - linux +打印linux版本(一个字符为5或6 ..等),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26216666/

10-11 22:33
查看更多