繁体   English   中英

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

[英]How do I delete all lines from a file after (and including) a line that contains a defined string in a Bash script?

我正在破解Bash脚本中间的文本文件(在安装了OSMC的RPI3B +上),并尝试在包含文本“ BLAH DE BLAH”的第一行中裁剪文件(此后删除同一文件中的所有内容)并在第一行中找到该文本)。

例如(在文件filename.text中):

这是第一行

这是第二行

这是包含“ BLAH DE BLAH”的第三行

这是第四行

这是第五行

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

这是第一行

这是第二行

我已经尝试调查awk和sed的相关文章,但是我发现这一切都如此令人困惑,因为我找不到能完全满足我需要的内容(有些是在某些行号处分割的,有些是从命令行而不是bash脚本,某些字符串之前和之后的字符串)...而我被卡住了。 如您所见,我什至无法弄清楚如何正确设置帖子的格式(我的头好痛)!

任何帮助表示赞赏-谢谢!

看起来像

sed '/BLAH DE BLAH/Q'

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM