这里的第一个问题,所以很容易(:
我有385个文件是模拟的结果,名为### _ result.dat。但是,一些结果导致错误,我可以使用-l标志grep,因为这些文件总是包含字符“=”。
因此获取错误文件没问题:
grep -l = *_result.dat | wc -l
4
当我想列出没有任何错误的文件时,我想我可以使用v-flag反转grep:
grep -v -l = *_result.dat | wc -l
385
ls | wc -l
385
所以这给了我所有文件,包括有错误的文件。
我在这里做错了什么?
现在我知道我可能只是扔掉那些坏的并从那里继续,但我想知道为什么这种grep的用法对我不起作用。
答案 0 :(得分:0)
您应该使用grep -L
。您在此处执行的操作是查找包含不符合(-l
)的行的文件(-v
)与您的模式匹配。