bash – 如何grep,排除一些模式?

前端之家收集整理的这篇文章主要介绍了bash – 如何grep,排除一些模式?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在文件中找到有一些模式的出现和没有一些其他模式的行。例如,我需要找到所有文件/行,包括织布机,除了阴暗的。所以,我可以找到有命令的织机:
grep -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)

现在,我想搜索除了阴暗的织机。但是,以下两个命令都失败:

grep -v 'gloom' -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)
grep -n 'loom' -v 'gloom' ~/projects/**/trunk/src/**/*.@(h|cpp)

我应该怎么做才能实现我的目标?

编辑1:我的意思是织机和阴影是字符序列(不一定是字)。所以,我需要,例如,bloomberg在命令输出,并不需要ungloomy。

编辑2:有我的期望的样本。
以下两行都在命令输出中:

I faced the icons that loomed through the veil of incense.

Arty is slooming in a gloomy day.

以下两行都不在命令输出中:

It’s gloomyin’ ower terrible — great muckle doolders o’ cloods.

In the south west round of the heigh pyntit hall

如何只是链接greps?
grep -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp) | grep -v 'gloom'

猜你在找的Bash相关文章