嗨,我有一个命令/功能是一个将用户名分配给变量的脚本
所以:
var1=dedwards torontobgs NJVMTTS2 srounce jstickler
echo $var1 produces >> dedwards torontobgs NJVMTTS2 srounce jstickler
如何编写命令以查看变量中是否存在用户标识“ NJVMTTS2”?似乎变量被视为一个字符串而不是单个字符串?
我知道这很简单,但是无法正常工作
我想做的如下:
$$ 1中是否存在$ 1(由anther函数传递)
然后做点什么
so if $1 = NJVMTTS2
and if NJVMTTS2 contained in the $VAR1
Then do echo "yes" else echo "no"
最佳答案
只是标准模式匹配。
var1='dedwards torontobgs NJVMTTS2 srounce jstickler'
if [[ $var1 = *NJVMTTS2* ]]; then
…
fi
或者,出于便携性:
case "$var1" in
*NJVMTTS2*) …;;
esac
更新资料
如果NJVMTTS2在参数中,则应引用参数扩展,但必须小心不要引用模式:
case "$var1" in
*"$1"*) …;;
esac
关于linux - 读取变量并搜索if和then语句以匹配变量中的某些内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23068547/