我有一个相当大的目录,我喜欢搜索文件中是否出现特定字符串。我有一个大约30个字符串的列表,我的目录是1.3G。我尝试将所有字符串添加到名为的文件中
strings
然后我用了grep -r -f strings . > grepresults
但这需要很长时间。我不会抱怨,除非我看了一下文件grepresults
,并且内容似乎与我的任何字符串都不匹配。我做错事了。我应该怎么做才能立即看到我的命令的结果,并验证它是否是我想要的。然后我就可以让它运行了。请告诉我,我将发布当前发送的示例。
我发布了grep -rFf foo -o
,似乎得到了一大堆不相关的内容。我不知道如何使用标准输出。您能提供更详细的说明吗?
答案1
(从编辑中提取的答案)
我通过让它运行一整夜得到了搜索结果。我使用的命令是:
@ubuntu:~/WORKING_DIRECTORY/LC_ALL=C fgrep -rFf bar > ~/myfile
myfile
在上面的命令中调用的移动结果文件肯定有帮助。
我还对文件中的字符串进行了排序。它最初被称为strings
,我从该线程中的一条评论中了解到将其更改为另一个名称。所以在上面的命令中它被称为bar
.使用LC_ALL=C
andfgrep
代替有grep
很大帮助。所有的建议都有助于回答。