我想构建一个shell脚本。 CentOS版本应该有一个条件标志。我想设置一个变量为版本这样如何在shell脚本中设置linux版本?
VERSION := $(lsb_release -sr)
但是当我包括这部分我得到了错误。请有人帮我在shell脚本中获取版本。
N.B:lsb_release sr
当我在终端中给出这个命令时工作正常。
我想构建一个shell脚本。 CentOS版本应该有一个条件标志。我想设置一个变量为版本这样如何在shell脚本中设置linux版本?
VERSION := $(lsb_release -sr)
但是当我包括这部分我得到了错误。请有人帮我在shell脚本中获取版本。
N.B:lsb_release sr
当我在终端中给出这个命令时工作正常。
在shell脚本:
VERSION=$(lsb_release -sr)
或VERSION=$(/usr/bin/lsb_release -sr)
完整路径。
会将发布值存储在$ VERSION中。你遇到了什么错误 ??
bash说这是不正确的。 – 2013-05-14 06:15:34
你试过如上所述吗? – kumarprd 2013-05-14 07:03:19
是。我写了两个建议。 – 2013-05-14 07:40:56
试试这个命令
uname -r
-r, --kernel-release print the kernel release
在我的情况下,它是只表示2.6.39
自己尝试为uname --help
为您合适的选择。
好的,谢谢...你会写一行,你应该做什么来写在shell脚本?我的问题在那里。我认为我在shell脚本中做错了。 – 2013-05-14 05:50:53
我认为你正在做的权利..我不是很好的外壳脚本..只是检查[这](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
它是'uname -r'。为什么这个标记为C++? – 2013-05-14 05:24:52
,因为我正在编译shell脚本中的C++代码。 – 2013-05-14 05:28:53
我只需要像5.6,6.3等版本 – 2013-05-14 05:29:38