我正在尋找一個命令,該命令將返回沒有該體系結構的內核版本。如何獲得無內核版本的內核版本
使用uname -r回報:2.6.32-279.22.1.el6.x86_64但我只需要2.6.32-279.22.1.el6
我可以做到這一點使用正則表達式和的Chomp一切都會過去的最後一個dot
我正在尋找一個命令,該命令將返回沒有該體系結構的內核版本。如何獲得無內核版本的內核版本
使用uname -r回報:2.6.32-279.22.1.el6.x86_64但我只需要2.6.32-279.22.1.el6
我可以做到這一點使用正則表達式和的Chomp一切都會過去的最後一個dot
鑑於可以使用正則表達式,您可以將字符串與^(.*)\.[^.]*$
進行匹配並獲取第一個捕獲組。
((.*)\..*
一般也行,用「貪婪」的量詞,但比照你的正則表達式引擎的引用)
我不知道它是多麼輕便,但你可以做到以下幾點 -
uname -r | SED S/\`arch` //
例子 -
$使用uname -r
2.6.32-358.6.2.el6.x86_64
$使用uname -r。| SED S/\`arch` //
2.6.32-358.6.2.el6
你無法避免它。在內核構建期間,藉助「本地版本 - 附加到內核版本」(http://lxr.linux.no/linux+ */init/Kconfig#L56)配置選項,設置這些額外的「el6.x86_64」,主要用於跟蹤構建版本和發行版本。
所以,一個可能的解決方法是象下面這樣:
uname -a | awk '{print $3}'
你說:「我可以用一個正則表達式做到這一點」。看來你已經解決了它。那麼問題是什麼? –