使用 sed 替换单词

使用 sed 替换单词

是否可以使用 sed 来替换单词,但避免替换以字母开头的单词?

例如,如果我用 Woman 替换 man,但 Women 变成 wowoman 是否可以用 sed 跳过 Woman ?或者您会再次输入 sed 以从字母开头删除 wo 吗?

sed -i 's/man/woman/g' /usr/share/dict/words | sed 's^wo//'g /usr/share/dict/words 

这似乎不起作用,只需在开始时添加另一个 wo 即可。

在阅读了有关将 grep 导入 sed 的更多信息后,我尝试了以下命令

sudo sed -i 's/man/woman | grep -v 'woman'/g' words1 

我想尝试的是用女人替换所有有男人的字母

答案1

仅当“man”是单个单词时才替换:

sed -i 's/\bman\b/woman/g' /usr/share/dict/words

相关内容