【问题标题】:remove multiple lines from text file using grep使用 grep 从文本文件中删除多行
【发布时间】:2011-12-25 04:30:29
【问题描述】:

我想从我的文本文件中删除不需要的行,其中包含某些单词。我像这样使用 grep -v

grep -v 'error|fault|unkownn' input.txt > out.txt

它适用于一个单词,但不适用于多个单词。我错过了什么吗?

【问题讨论】:

  • 我认为这里已经回答了:stackoverflow.com/questions/364105/…,不是吗?
  • @jstarek 你是对的,我已经搜索了 1 个小时但找不到它,我不知道它为什么对我隐藏 :)。谢谢你的帮助!!

标签: grep


【解决方案1】:

| 仅在grep扩展 正则表达式模式下工作时被视为正则表达式字符。因此,您需要执行以下操作之一:

# Escape the | so that it's treated as a regex control character
grep -v 'error\|fault\|unkownn' input.txt > out.txt

# -E enables extended regex mode
grep -vE 'error|fault|unkownn' input.txt > out.txt

# egrep = grep -E
egrep -v 'error|fault|unkownn' input.txt > out.txt

【讨论】:

  • 欢迎来到 StackOverflow。请记住通过按checkmark sign 来接受最能解决您的问题的答案(如果有)。当您看到好的问答时,请使用 gray triangles 投票。请注意,giving 给他人的声望点并不意味着扣除您的声望点(除非您发布了赏金)
猜你喜欢
  • 1970-01-01
  • 2012-03-28
  • 2010-09-15
  • 2010-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-06
  • 1970-01-01
相关资源
最近更新 更多