请问一下老师,有个shell 问题,要请教下
clusterversion=“6.5.3”
我的判断需求是
判断clusterversion 不是6版本(我的判断方式以6为开头的字符串),那这个逻辑怎么写呢
比如我正面判断
if [[ $clusterverion =~ ^6 ]];then
xxxx
fi
上面的意思是,如果clusterversion 是6版本(以6开头的字符串),
现在我想反着判断,假设clusterversion 不是6版本,那么这个脚本该怎么写?
如果有其它的判断方式,能够判断出版本不是6版本的也行
总结
如果我想判断clusterversion(tidb集群的版本号)是不是6版本,该怎么样去判断(我想到的方法是不以6开头的就行)?
啥方法都
shell,要不一边调试一边问下kimi或者豆包?
MrSylar
( Mr.Sylar)
7
用 awk 对字符串做截取,取第一位,例如 6.5.3 是 6,if 判断 != 6 是不是满足需要了
Ming
8
if [[ ! $clusterversion =~ ^6 ]]; then
2 个赞
有猫万事足
9
if [[ ! $clusterversion =~ ^6 ]]; then
fi
加个!应该是可以的,我怀疑是缩进之类的问题导致的运行不过去。
其实最好的办法还真就是交给ai,让ai写。
庙小妖风大
(庙小妖风大)
10
copy code to AI Chat, u will find out less than 5 minutes.
kang
11
clusterversion=“6.5.3”
if [[ ! $clusterversion =~ ^6 ]]; then
echo “clusterversion 不是以 6 开头的版本。”
# 在这里添加你的逻辑
else
echo “clusterversion 是以 6 开头的版本。”
fi
export clusterversion=“6.5.3”
echo $clusterversion |awk -F’.’ ‘{print $1}’
或者
echo $clusterversion |cut -d’.’ -f 1
放在一个变量里,再判断是不是等于6吧
这个应该可以。楼主可以测试一下,你取的值也不一定会很标准,要看一下版本里具体的数据值,根据值来截取数据