我运行了以下命令:
grep -f fileA.txt -v fileB.txt
假设在文件B中有这样一个字符串:stringlikethis1234
因为我想看看fileB中有什么,但不是fileA中的,但它没有命中。但是如果我用-w:执行相同的命令
grep -f fileA.txt -v -w fileB.txt
它返回了我一直在寻找的字符串,为什么会这样?-w是匹配整个字符串,但即使没有它,它仍然应该返回命中,对吧?无论是部分还是全部。
谢谢
在fileA中检查要在搜索fileA时排除的单词。该单词旁边可能有空格或制表符。
它在我的系统上运行良好
来自grep帮助:
-w、 --单词regexp强制PATTERN只匹配整个单词
-v、 --反转匹配选择非匹配行
[root@project1-master~]#cat filea
这个
[root@project1-master~]#cat文件,此旁边有空格
这个
[root@project1-master~]#cat fileb
这个
这些
这个
这是
- "grep-f文件a-v文件b";相当于";grep-v this fileb",因此它返回&这些
[root@project1-master~]#grep-f文件a-v文件b
这些
2.";grep-f文件a-v-w文件b";相当于grep-v-w这个fileb,所以它将显示"thithis",并且在"thithi"中有这个词的边界
[root@project1-master~]#grep-f filea-v-w fileb
这些
这个
- grep-f文件awithspacenexttothis-v文件b等价于"grep-v"this"fileb">
[root@project1-master~]#grep-f文件a与此-v文件b 相邻
这些
这个
4.grep-f文件a与此-v-w文件b之间的空格等价于";grep-v-w"this"fileb",它将显示";蓟";这就是";因为在它们中对于";这个";
[root@project1-master~]#grep-f文件a与此-v-w文件b 相邻的空间
这些
这个
这是
如果你提供filea&fileb和grep输出。