如何使用 grep 按长度过滤匹配行以过滤长行输出并限制行长度? [已关闭]

问题描述 投票:0回答:1

我想过滤掉 grep 匹配的行,以便从匹配结果中删除超过某个最大长度的行。

一个示例用例是我使用

grep
来查找特定函数调用的匹配项。我在 Linux 服务器上有一个目录,其中有一组代码存储库。我知道我之前编写过一些使用特定函数的代码,并且我可以将其用作其他内容的示例。

我不记得这个示例代码在哪个目录,但我知道我使用过的一个函数。

如果我

grep
进行匹配而不过滤长行,由于虚假匹配,我会得到一堵文本墙。

我无法轻松提供我在屏幕上看到的任何示例 - 请想象一下

grep
的输出包括一些包含数千个字符的行,实际上有数千行长。这些行模糊了输出并使其无法阅读 - 因此我的目标是将它们过滤掉。

grep
1个回答
-1
投票

重要的

grep
字符串是
grep '^\{1,200\}$'
,这意味着:

  • ^
    锚定行首
  • $
    锚定线端
  • .\{1,200\}
    匹配任何字符 (
    .
    ) 1 到 200 次
grep -rI some_function . 2>/dev/null | grep '^.\{1,200\}$'
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.