0

我有一个列表,其中包含数百个混合大小写的文件名~/script-filenames,以及在当前目录中要搜索的数百个文本文件,其中可能包含这些文件名。

目前我正在使用以下两个命令:

  1. 不分大小写返回所有匹配项:

    xargs -0 -I @ -a ~/script-filenames grep -ri @
    
  2. 要返回所有完全匹配:

    xargs -0 -I @ -a ~/script-filenames grep -r @
    

但是,当忽略大小写但大小写准确时,我将如何找到匹配的字符串?

也许有一种使用 egrep 和 regexp 的方法,但我不知道如何。

4

1 回答 1

1

您的问题的一个简单解决方法可能是使用 off diff:

xargs -0 -I @ -a ~/script-filenames grep -ri @ >hitList.IgnoredCase
xargs -0 -I @ -a ~/script-filenames grep -r @ >hitlist.WithCase

diff -u hitList.IgnoredCase hitlist.WithCase|grep ^+ |cut -c 2-

diff 行的输出将仅包含大小写不准确的行。

于 2013-03-11T13:34:31.380 回答