使用 sed 命令

使用 sed 命令

我遇到了一个问题。我想更改 ole 而不更改此文件中的 dole。我尝试使用:

sed -i s/^ole$/kari/ file.txt

有没有办法在不使用两个命令行的情况下改变这种情况:

sed -i s/^ole/kari/ file.txt; sed -i s/ole$/kari/ file.txt

猫文件.txt

ole duck
doffen duck
dole duck
duck, ole

答案1

sed -e s'/\bole\b/kari/g' file.txt

\b边界

答案2

sed -i.bak 's/\<ole\>/new_string/g' file.txt 

如果我理解正确的话,在这种情况下,new_string 应该是 kari(不带引号)。

相关内容