【问题标题】:sed + need to remove each line in file that begin with ###sed +需要删除文件中以###开头的每一行
【发布时间】:2010-06-22 10:29:02
【问题描述】:

如何删除以三个#开头的行

例如需要删除以下所有行:from file

1 ### bla bla bal

2 ###blablabla

3 ### 废话

。 . .

THX 耶尔

【问题讨论】:

标签: sed


【解决方案1】:
cat file | sed '/^###/d'

【讨论】:

  • 好吧,如果你在没有它的情况下尝试它会在那里呆很长时间;)
  • 您将文件作为输入传递给 sed。 sed '/^###/d' file
  • 我们可以深入讨论 *nix 脚本应该如何始终是来自 STDIN/STDOUT 的管道,但是是的,sed 将在命令行上接受一个或多个文件参数。
  • 从我的角度来看,最好使用 awk,但是如何更改 sed 以执行 awk 的操作?
  • @everyone。我们能否接受 sed 将读取来自 STDIN(无论是管道还是重定向)或一个或多个在命令行上作为参数提供的文件名的输入。这个评论越来越傻了
【解决方案2】:

你也可以使用 awk

awk '!/^[ \t]*###/' file

【讨论】:

    猜你喜欢
    • 2019-07-26
    • 1970-01-01
    • 2020-04-09
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 2016-05-21
    • 1970-01-01
    • 2016-11-06
    相关资源
    最近更新 更多