linux 特定代码块的Grep

iyr7buue  于 2024-01-06  发布在  Linux
关注(0)|答案(3)|浏览(137)

我有一个幻影代码块,它把我的程序弄得一团糟,但我就是找不到它在我的项目中的位置。(对空白)代码是什么,但由于它是代码,它有很多空格,句号,括号,等等。这将是一个巨大的痛苦,键入一个正则表达式的整个事情。有没有一种方法,我可以搜索一个精确匹配的字符串使用grep -r

zmeyuzjn

zmeyuzjn1#

fgrep(或grep -F)可以做到这一点。不要忘记引用模式以防止shell解释它:

  1. $ echo 'a' | grep '[abc]'
  2. a
  3. $ echo 'a' | fgrep '[abc]'
  4. $ echo '[abc]' | fgrep '[abc]'
  5. [abc]

字符串

dgsult0t

dgsult0t2#

如果是多行模式,pcregrep -F可能有用(-F用于固定字符串)。

p5fdfcr1

p5fdfcr13#

下面是一个匹配markdown代码块的解决方案。我使用pcregrep(旧)和pcre2grep(新)

上下文

README.md

  1. ## Installation
  2. Install the application locally.
  3. ```shell
  4. pip install -r requirements.txt
  5. flask run --host=$HOST --port=$PORT

Test

End-to-end test.

  1. curl "http://localhost"; echo
  1. 字符串
  2. # 解决方案

$ pcregrep -M '[^`]*' README.md

  1. pip install -r requirements.txt
  2. flask run --host=$HOST --port=$PORT
  1. curl "http://localhost"; echo

$ pcre2grep -M '[^`]*' README.md

  1. pip install -r requirements.txt
  2. flask run --host=$HOST --port=$PORT
  1. curl "http://localhost"; echo
展开查看全部

相关问题