2013-05-14 73 views
0

我想构建一个shell脚本。 CentOS版本应该有一个条件标志。我想设置一个变量为版本这样如何在shell脚本中设置linux版本?

VERSION := $(lsb_release -sr) 

但是当我包括这部分我得到了错误。请有人帮我在shell脚本中获取版本。

N.B:lsb_release sr当我在终端中给出这个命令时工作正常。

+2

它是'uname -r'。为什么这个标记为C++? – 2013-05-14 05:24:52

+1

,因为我正在编译shell脚本中的C++代码。 – 2013-05-14 05:28:53

+1

我只需要像5.6,6.3等版本 – 2013-05-14 05:29:38

回答

1

在shell脚本:

VERSION=$(lsb_release -sr)VERSION=$(/usr/bin/lsb_release -sr)完整路径。

会将发布值存储在$ VERSION中。你遇到了什么错误 ??

+0

bash说这是不正确的。 – 2013-05-14 06:15:34

+0

你试过如上所述吗? – kumarprd 2013-05-14 07:03:19

+0

是。我写了两个建议。 – 2013-05-14 07:40:56

1

试试这个命令

uname -r

-r, --kernel-release  print the kernel release 

在我的情况下,它是只表示2.6.39

自己尝试为uname --help为您合适的选择。

+1

好的,谢谢...你会写一行,你应该做什么来写在shell脚本?我的问题在那里。我认为我在shell脚本中做错了。 – 2013-05-14 05:50:53

+0

我认为你正在做的权利..我不是很好的外壳脚本..只是检查[这](http://stackoverflow.com/questions/10856525/better-way-to-check-linux-version)或[试试这个](http://unix.stackexchange.com/questions/23050/how-to-write-a-script-that-effectively-determines-distro-name) – goodies 2013-05-14 06:13:44