如何使用sed删除能匹配到多个字段的那几行

2025-03-24 03:15:14
推荐回答(1个)
回答1:

为了叙述方便,假设你要匹配的字段是 panda

我有一个思路:

  1. 对所有存在 panda 的行,只进行一次替换(sed 中不要用 g 命令)——将panda替换为文本中不存在的特殊字符串比如@@@@

  2. 经过第一步,剩下的包含panda的行就是你应当删除的行。

  3. 删除后,再把@@@@还原为panda即可。

如果不太清楚,请看下图——我的实验:

test.txt 文件内容为:

panda panda panda
duck panda duck duck
goose goose duck panda panda
bear bear duck duck panda