如何从包含Bash脚本中已定义字符串的行之后(包括该行)删除文件中的所有行?

如何从包含Bash脚本中已定义字符串的行之后(包括该行)删除文件中的所有行?,bash,Bash,我在一个BASH脚本的中间(在一个RPI3B+上安装了OSMC)中进行黑客攻击,并尝试在包含“BLAH de BLAH”的文本的第一行中裁剪一个文件(删除同一个文件中的所有内容并在其上找到文本的第一行)。 例如(在filename.text文件中): 这是第一行 这是第二行 这是包含“废话”的第三行 这是第四行 这是第五行 所需输出(在文件filename.text中): 这是第一行 这是第二行 我曾试图调查与awk和sed相关的帖子,但我发现这一切都很混乱,因为我找不到任何能完全满足我需要的东

我在一个BASH脚本的中间(在一个RPI3B+上安装了OSMC)中进行黑客攻击,并尝试在包含“BLAH de BLAH”的文本的第一行中裁剪一个文件(删除同一个文件中的所有内容并在其上找到文本的第一行)。 例如(在filename.text文件中):

这是第一行

这是第二行

这是包含“废话”的第三行

这是第四行

这是第五行

所需输出(在文件filename.text中):

这是第一行

这是第二行

我曾试图调查与awk和sed相关的帖子,但我发现这一切都很混乱,因为我找不到任何能完全满足我需要的东西(有些是在特定行号上拆分的,有些是从命令行而不是bash脚本中拆分的,有些是在特定字符串之前和之后)。。。我被卡住了。正如你所看到的,我甚至不知道如何正确格式化这篇文章(我的头好痛)

感谢您的帮助-谢谢

看起来像

sed '/BLAH DE BLAH/Q'

将在GNU sed中完成这项工作。

可能是Thank you-works great的副本-我必须添加一个-I和文件名才能将其写回文件,但我猜这对以前做过类似工作的人来说是显而易见的(即不是我:)