我有一个shell脚本变量
$a = "Hello i am pass"
现在我想在变量pass
中搜索“$a
”。
if ["$a" == "pass"]; then
echo "`Success`"
else
echo "`fail`"
fi
请给我一个shell脚本,用于搜索上面代码中使用的pass关键字。
答案 0 :(得分:11)
试试这个,
#!/bin/bash
a="Hello i am pass";
if [ `echo $a | grep -c "pass" ` -gt 0 ]
then
echo "Success"
else
echo "Fail";
fi
答案 1 :(得分:5)
这是一种更简洁的方式来写这个:
echo "$a" | grep "pass" && echo "Found." || echo "Not found."
您可以使用括号来输入多条指令,而不是简单的echo
:
echo "$a" | grep "pass" && (echo "Found.";exit 0) || (echo "Not found.";exit 1)
答案 2 :(得分:4)
flag=`echo $a|awk '{print match($0,"pass")}'`;
if [ $flag -gt 0 ];then
echo "Success";
else
echo "fail";
fi
答案 3 :(得分:1)
我使用了扩展选择参数,并使用execute shell进行了字符串匹配。 如果有人会发现相同的问题,任何人都可以使用
if [ `echo $test| grep -c "abc" ` -gt 0 ]
然后 回声“成功” 其他 回显“失败”; fi
答案 4 :(得分: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
答案 5 :(得分:0)
简短命令:
OPC="test"
PROD="This is a test"
[[ ${PROD,,} =~ $OPC ]] && echo -n 1 || echo -n 0
答案是" 1"当找到" OPC"在" PROD"。