Shell SH:如何通过egrep查找变量中是否存在字符串?

时间:2014-10-23 08:04:26

标签: shell grep sh

对于一个小脚本shell sh

我想知道"""或"""或"是"存在于变量Toto

Toto="Planet of the world"
Test= $(egrep -c '(of|the|is)' "$Toto")
if $Test > 0; then echo "OK"; else echo "NO"

但是这段代码不起作用....

有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:2)

Toto="Planet of the world"

Test=$(echo $Toto | grep -c "of\|the\|is")
if [[ $Test -gt 0 ]]
then
  echo "OK";
else
  echo "NO";
fi

更短:

Toto="Planet of the world"

Test=$(echo $Toto | grep -c "of\|the\|is")
[[ $Test -gt 0 ]] && echo "OK" || echo "NO";

答案 1 :(得分:0)

尝试使用管道,如下所示:

 $ Toto="Planet of the world"
 $ test="$Toto | egrep '(of|the|is)'"
 $ if [ "$test" > 0 ] ; then echo 'OK'; else echo 'NO'; fi