首页 > 解决方案 > awk 用字符串删除行...如果字符串包含行返回怎么办?

问题描述

尝试在包含一些字符串的文件中删除行,这非常有效:

awk '!/string1/string\ 2/' file.txt > file.filtered.txt

现在我需要在任何行的末尾添加一个包含“string3”的字符串。

是否可以添加包含换行符的字符串?

我尝试了这些迭代,但没有一个奏效:

awk '!/string1/string\ 2/string3\n/' file.txt > file.filtered.txt

awk '!/string1/string\ 2/string3\\n/' file.txt > file.filtered.txt

例如,我们要删除这样结尾的行:

YYYY-MM-DD HH:MM:SS criteria=value, criteria=value, tag=ABC

但不要删除以这样结尾的行:

YYYY-MM-DD HH:MM:SS criteria=value, criteria=value, tag=ABC (123)

想法?

TIA,唐

标签: awk

解决方案


谢谢,这很好用……你们这些人是无价的!

awk '!/string1|string\ 2|string3$/'

推荐阅读