假设您有一个文本文件:
foo fnord bar
bizz foo poit
现在,我想将“ foo”和“ bar”都替换为“ narf”。
我知道我可以使用:
sed -e 's/foo/narf/g' -e 's/bar/narf/g' fileName
但是我想使用一个OR运算符,该运算符告诉正则表达式通过一个表达式匹配两个指针。
我打了一些手册,我认为管子应该适合我的需求,但是我试过了
sed -e 's/foo|bar/narf/g' -i fileName
它没有用,甚至没有引发错误。
我在这里做错了什么?
使用-r
扩展正则表达式语法的选项:
sed -r -e 's/foo|bar/narf/g'
否则,请避免析取为\|
:
sed -e 's/foo\|bar/narf/g'
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句