正则表达式抓取 Red Hat 发行版
Regular expression to grab Red Hat release version
运行 命令 uname -r
给我们:
3.10.0-229.14.1.el7.x86_64
我需要提取 "el7"。我对正则表达式不是很好,可以帮忙。如果可以,请解释解决方案中发生的事情。
谢谢
在 BASH 中,您可以使用此正则表达式:
s='3.10.0-229.14.1.el7.x86_64'
[[ $s =~ ([^.]+)\.[^.]+$ ]] && echo "${BASH_REMATCH[1]}"
el7
或者不使用 awk 的正则表达式:
uname -r | awk -F '.' '{print $(NF-1)}'
el7
运行 命令 uname -r
给我们:
3.10.0-229.14.1.el7.x86_64
我需要提取 "el7"。我对正则表达式不是很好,可以帮忙。如果可以,请解释解决方案中发生的事情。
谢谢
在 BASH 中,您可以使用此正则表达式:
s='3.10.0-229.14.1.el7.x86_64'
[[ $s =~ ([^.]+)\.[^.]+$ ]] && echo "${BASH_REMATCH[1]}"
el7
或者不使用 awk 的正则表达式:
uname -r | awk -F '.' '{print $(NF-1)}'
el7