Grep 我怎样才能和格雷普通话?

Grep 我怎样才能和格雷普通话?,grep,Grep,对不起,我的初学者问题:我想grep.md文件中的链接,除了一个特殊的行,它以一个特殊的单词开头 因此,我的index.md看起来像: [Test](202001-test) BlaBla: [Test2]((202002-test2) grep -Eo '\[.*\]\([2].*\)' ~/script/index.md 我的代码如下所示: [Test](202001-test) BlaBla: [Test2]((202002-test2) grep -Eo '\[.*\]\([2].

对不起,我的初学者问题:我想grep.md文件中的链接,除了一个特殊的行,它以一个特殊的单词开头

因此,我的index.md看起来像:

[Test](202001-test)
BlaBla: [Test2]((202002-test2)
grep -Eo '\[.*\]\([2].*\)' ~/script/index.md
我的代码如下所示:

[Test](202001-test)
BlaBla: [Test2]((202002-test2)
grep -Eo '\[.*\]\([2].*\)' ~/script/index.md
那么我应该写些什么,让grep忽略第二行?在正则表达式网站上找不到答案


问候语

假设重点是匹配像
[…](2…
这样的子字符串,这些子字符串在方括号内不包含额外的
[
]
,在括号之间是
/
,如果希望避免匹配以
blablablabla开头的字符串:
,你可以考虑使用< /P>
grep -v '^BlaBla:' index.md | grep -o '\[[^][]*](2[^()]*)'
在这里,
grep-v'^BlaBla:'
使用
-v
选项反转匹配,并输出所有不以
blablabla:
开头的行。然后,第二个
grep
获取必要的有效匹配项

POSIX BRE图案细节

  • \[
    -a
    [
    字符
  • [^][]*
    -除
    [
    ]
    之外的零个或多个字符
  • ]
    -a
    ]
    字符
  • (2
    -a
    (2
    子字符串)
  • [^()]*
    -0个或更多字符,而不是
  • -a
    字符
见:


假设匹配子字符串,如<代码>……(2…)/代码>,它不包含额外的<代码> [< /代码>和<代码> > /代码>方括号内和<代码>(< /代码> />代码> <代码>之间的括号中,如果你想<强>避免匹配字符串,从<代码> BLABLA:<强>,你可以考虑使用

grep -v '^BlaBla:' index.md | grep -o '\[[^][]*](2[^()]*)'
在这里,
grep-v'^BlaBla:'
使用
-v
选项反转匹配,并输出所有不以
blablabla:
开头的行。然后,第二个
grep
获取必要的有效匹配项

POSIX BRE图案细节

  • \[
    -a
    [
    字符
  • [^][]*
    -除
    [
    ]
    之外的零个或多个字符
  • ]
    -a
    ]
    字符
  • (2
    -a
    (2
    子字符串)
  • [^()]*
    -0个或更多字符,而不是
  • -a
    字符
见:


附加
| grep-v'^BlaBla'
?欢迎来到SO,很高兴你分享了你的代码,你能在你的问题中也发布你的预期输出样本并让我们知道吗。它只匹配
[测试](202001测试)
,因为在第二行,在
]后面必须有一个数字(
(但是有
)。或者输入字符串中是否有输入错误?欢迎来到Stack Overflow!是针对编程问题,而不是关于使用或配置Unix及其实用程序的问题。或者是针对此类问题的更好位置。该死。是的,行中有输入错误…sryAppend
|grep-v'^BlaBla'
?欢迎来到SO,很高兴您分享了您的code、 请在您的问题中也发布您预期输出的示例,然后让我们知道。它只匹配
[测试](202001测试)
,因为在第二行,在
]后面必须有一个数字(
)(但是有
)。或者输入字符串中是否有输入错误?欢迎来到Stack Overflow!是针对编程问题,而不是关于使用或配置Unix及其实用程序的问题。或者是针对此类问题的更好的地方。该死。是的,行中有输入错误…sryThanks需要帮助!在我的第一篇文章中有一个输入错误。因此正确的文本是不需要的uble(.所以你的输出是正确的。但是我需要从脚本中忽略第2行。所以我用grep-v'BlaBla:…'index.md |你的代码编辑了我的代码。它似乎可以工作。这是一个好的解决方案吗?谢谢你的帮助!在我的第一篇文章中有一个打字错误。所以正确的文本没有双精度(.所以你的输出是正确的。但是我需要从脚本中忽略第2行。所以我用grep-v'BlaBla:…'index.md |你的代码编辑了我的代码。它似乎可以工作。这是一个好的解决方案吗?