BASH如果string包含斜杠或反斜杠

时间:2013-08-09 14:19:24

标签: regex string bash backslash

我正在尝试让我的bash脚本检查一个字符串是否包含"/""\",但不知何故我无法使其正常工作。

这是我到目前为止所得到的:

if [[ "$1" == *\/* ]]; then
...
    elif if [[ "$1" == *\\* ]]; then
...
    fi

非常感谢帮助!感谢

1 个答案:

答案 0 :(得分:10)

检查\/是否在变量$string中。

if [[ "$string" == *\/* ]] || [[ "$string" == *\\* ]]
then
  echo "yes"
fi

测试:

$ string="hello"
$ if [[ "$string" == *\/* ]] || [[ "$string" == *\\* ]]; then echo "yes"; fi
$
$ string="hel\lo"
$ if [[ "$string" == *\/* ]] || [[ "$string" == *\\* ]]; then echo "yes"; fi
yes
$ string="hel//lo"
$ if [[ "$string" == *\/* ]] || [[ "$string" == *\\* ]]; then echo "yes"; fi
yes