2013-08-01 159 views
0

我正在尋找一個命令,該命令將返回沒有該體系結構的內核版本。如何獲得無內核版本的內核版本

使用uname -r回報:2.6.32-279.22.1.el6.x86_64但我只需要2.6.32-279.22.1.el6

我可以做到這一點使用正則表達式和的Chomp一切都會過去的最後一個dot

+2

你說:「我可以用一個正則表達式做到這一點」。看來你已經解決了它。那麼問題是什麼? –

回答

0

鑑於可以使用正則表達式,您可以將字符串與^(.*)\.[^.]*$進行匹配並獲取第一個捕獲組。

(.*)\..*一般也行,用「貪婪」的量詞,但比照你的正則表達式引擎的引用)

1

我不知道它是多麼輕便,但你可以做到以下幾點 -

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

0

你無法避免它。在內核構建期間,藉助「本地版本 - 附加到內核版本」(http://lxr.linux.no/linux+ */init/Kconfig#L56)配置選項,設置這些額外的「el6.x86_64」,主要用於跟蹤構建版本和發行版本。

所以,一個可能的解決方法是象下面這樣:

  uname -a | awk '{print $3}'