【问题标题】:Grep specific words between quotation marks [duplicate]Grep引号之间的特定单词[重复]
【发布时间】:2017-08-01 20:20:50
【问题描述】:

假设我有这样一行:

<group description="" name="voice_guidance" comment="Missing description!" status="0">

我希望只用 bash 脚本 grep 注释说:

缺少描述!

【问题讨论】:

  • 你能澄清你的问题吗?至少,添加一个例子
  • 已编辑。按下回车有点太快了。 :)

标签: bash grep tags


【解决方案1】:

如果你只想要评论,你可以使用这个: grep -Po 'comment="\K[^"]*'

\K 表示只输出后面的部分,然后输出后面的所有非引号字符。

【讨论】:

【解决方案2】:

您可以使用简单的解决方案:

grep '"Missing description!"' filename.html

filename.html 是一个目标文件。

这是一个示例输出:

附:在这种情况下,当我看到 HTML 和 RegEx 都出现在同一个问题中时,我建议阅读这个答案:https://stackoverflow.com/a/1732454/5091346

【讨论】:

  • 好主意,但文字并不总是一样。
  • 对不起,@Bert。看来你的问题对我来说不够清楚。
【解决方案3】:

如果您不能在@rubystallion 的最佳答案中使用 perl-regexp (-P),请使用:

$ grep -o "comment=\"[^\"]\+" file | grep -o "[^\"]\+$"
Missing description!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-31
    • 1970-01-01
    • 2014-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多