【问题标题】:Adding a separator between found results by sed通过 sed 在找到的结果之间添加分隔符
【发布时间】:2022-10-17 09:16:49
【问题描述】:

我有一个像这样的文本文件,例如:

test.txt:
Hello my name is test
Well my name will be test
Hello Hello test
Hello my name already is test

现在我想得到每个“Hello”和“test”之间的一切。这对我有用:

cat test.txt | sed --quiet '/Hello/,/test/p'

它提供以下输出:

Hello my name is test
Hello Hello test
Hello my name already is test

是否可以像这样分开我的发现:

Hello my name is test;
Hello Hello test;
Hello my name already is test;

分隔符不必是 ';'任何其他角色都可以正常工作。

【问题讨论】:

  • 试试:sed 's/Hello.*test/&;/' file

标签: shell sed


【解决方案1】:

您的问题不清楚,但是,假设您想要以 Hello 开头的行并在末尾添加分号,您可以尝试;

$ sed -n '/^Hello/{s/$/;/p}' input_file
Hello my name is test;
Hello Hello test;
Hello my name already is test;

【讨论】:

  • 或者sed 's/^Hello.*/&;/p;d' file
猜你喜欢
  • 1970-01-01
  • 2015-12-08
  • 2012-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-24
  • 1970-01-01
相关资源
最近更新 更多