将shell语句转换为OR

大卫542

我将如何OR使用正确的语法执行以下语句:

if ps aux | (grep "[i]ngest_all.py" OR grep "[h]ello.py" ) > /dev/null
then
    echo "Script is already running. Skipping"
else
    exec "$DIR/ingest_all.py"
fi

您可以使用交流发电机(竖线字符:|)在grep regex内指定OR。

对于具有基本正则表达式的BSD grep(至少在OS X上),请使用转义管道\|

grep "[i]ngest_all.py\|[h]ello.py"

如果需要,还可以使用扩展的正则表达式,而无需在其中转义管道字符:

grep -E "[i]ngest_all.py|[h]ello.py"

或者

egrep "[i]ngest_all.py|[h]ello.py"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章