【问题标题】:Shell, Unix, grep -v外壳,Unix,grep -v
【发布时间】:2021-04-28 04:55:13
【问题描述】:

我知道我们可以在 shell 中执行grep -v。 我知道我们可以做到grep -A2

我们可以grep -v -A2吗?

我想删除 2 个连续的行。就像grep -A2

如何执行 grep -v(2 行)?

输入文件

Eat rice

14677

Go school

1245677

输出文件

Go school

1245677

【问题讨论】:

  • 请在您的问题中添加示例输入(无描述、无图像、无链接)以及该示例输入所需的输出(无评论)。
  • 你试过了吗?发生了什么?
  • 我试过 grep -v -A2 -> 语法错误。如果我执行 grep -A2(不带 -v),效果会很好
  • 尝试改变标志位置。而不是 -v -A2 尝试使用 -A2 -v

标签: shell unix grep


【解决方案1】:

sed轻松搞定:

$ cat input.txt
Eat rice
14677
Go school
1245677
$ sed '/Eat rice/,+1d' input.txt
Go school
1245677

删除所有匹配Eat rice 和后面的行,打印其余的行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-06
    • 1970-01-01
    • 2010-12-13
    • 1970-01-01
    • 1970-01-01
    • 2012-03-11
    • 2014-06-15
    相关资源
    最近更新 更多