我希望在文件中找到出现了某种模式而没有其他模式的行。例如,我需要查找包括 loom
在内的所有文件/行,除了那些具有 gloom
的文件/行。因此,我可以通过命令找到 loom
:
grep -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)
现在,我想搜索除了 gloom
以外的 loom
。但是,以下两个命令都失败了:
grep -v 'gloom' -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)
grep -n 'loom' -v 'gloom' ~/projects/**/trunk/src/**/*.@(h|cpp)
我应该怎样做才能达到我的目标?
编辑1: 我的意思是 loom
和 gloom
是字符序列(不一定是单词)。例如,我需要在命令输出中使用 bloomberg
,而不需要 ungloomy
。
编辑2: 这是我期望的样本。 以下两行都在命令输出中:
我透过香的面纱面对着 隐约可见的图标。
阿蒂在 阴郁的日子里是 缓缓移动。
以下两行都不在命令输出中:
这是 忧郁的心情电力可怕的ーー伟大的马克涂鸦者 o’cloods。
在西南方向的高山丘陵大厅里