我有一个 shell 脚本变量
$a = "Hello i am pass"
pass
现在我想在变量中搜索“ ” $a
。
if ["$a" == "pass"]; then
echo "`Success`"
else
echo "`fail`"
fi
请给我用于搜索 pass 关键字以在上述代码中使用的 shell 脚本。
试试这个,
#!/bin/bash
a="Hello i am pass";
if [ `echo $a | grep -c "pass" ` -gt 0 ]
then
echo "Success"
else
echo "Fail";
fi
flag=`echo $a|awk '{print match($0,"pass")}'`;
if [ $flag -gt 0 ];then
echo "Success";
else
echo "fail";
fi
这是一种更紧凑的编写方式:
echo "$a" | grep "pass" && echo "Found." || echo "Not found."
您可以使用大括号来输入多个指令,而不是简单的echo
:
echo "$a" | grep "pass" && {echo "Found.";exit 0} || {echo "Not found.";exit 1}
今天我使用扩展选择参数并使用执行 shell 进行字符串匹配。如果有人会发现同样的问题,任何人都可以使用它
if [ `echo $test| grep -c "abc" ` -gt 0 ]
然后回显“成功”,否则回显“失败”;菲
试试这个
a="Hello I am Pass";
a1="Hello, Passed my First Attempt"
a2="Passed in First Attempt"
if [[ ${a,,} =~ 'pass' ]]; then echo 'Success'; else echo 'First Attempt in Learning'; fi
短命令:
OPC="test"
PROD="This is a test"
[[ ${PROD,,} =~ $OPC ]] && echo -n 1 || echo -n 0
当在“PROD”中找到“OPC”时,答案将是“1”。