How to find text files not containing text on Linux?
如何在Linux上找到不包含某些文本的文件?基本上我要找的是下面的倒数
1 | find . -print | xargs grep -iL"somestring" |
具有讽刺意味的是,您引用的命令完全符合您的描述。测试一下!
1 2 3 | echo"hello"> a echo"bye"> b grep -iL BYE a b |
只说一句。
我想你可能会混淆-l和-l
1 | find . -print | xargs grep -iL"somestring" |
是的反义词
1 | find . -print | xargs grep -iL"somestring" |
顺便说一下,考虑一下
1 | find . -print0 | xargs -0 grep -iL"somestring" |
甚至
1 | grep -IRiL"somestring" . |
如果使用"find",脚本也会在文件夹中执行"grep":
1 2 3 4 5 6 | [root@vps test]# find | xargs grep -Li 1234 grep: .: Is a directory . ./test.txt ./test2.txt [root@vps test]# |
直接使用grep:
1 2 3 4 | # grep -Li 1234 /root/test/* /root/test/test2.txt /root/test/test.txt [root@vps test]# |
或者在"find"中指定选项"-type f"…即使使用find,也会花费更多的时间(首先是文件列表,然后是grep)。