PATH=one:onetwo:onetwothree:
如何使用 bash 检查"一\二"字符串?
echo "$PATH" | tr ':' 'n' | grep '^\one\two$'
所做的只是将:
分隔符替换为换行符,这允许grep
完全匹配每个路径,而不是包含子目录。
你要求这个吗,
echo ${PATH} | grep -e 'one\two'
?
注意:这也将匹配onetwo
使用grep
会更容易,如果你的grep
支持-q
,你可以抑制输出
grep -q 'one\two' <<< "$PATH" && echo found || echo not found
否则
grep 'one\two' <<< "$PATH" > /dev/null && echo found || echo not found