Как указать больше чем одну строку для игнорирования (grep команда)

Я использую grep для отфильтровывания каталогов, я не интересуюсь подобным это:

svn stat | grep -v data/charts | grep -v lib/model | grep -v web/pics

Это кажется небольшим "hacky". Существует ли лучший способ указать больше чем одну строку для игнорирования, так, чтобы я не объединял несколько команд grep в цепочку?

0
задан 28.07.2010, 17:48

3 ответа

Можно сделать svn stat | grep -vE 'data/charts|lib/model|web/pics'

Можно также интересоваться взглядом на grep -x. ack мог бы быть другой инструмент интереса для Вас.

2
ответ дан 24.11.2019, 02:55

Можно использовать disjuction с grep. Это - символ вертикальной черты как во многих regexes, но необходимо выйти из него, так как удар интерпретирует его как фактический канал. Попробуйте это:

svn stat | grep -v data/charts\|lib/model\|web/pics
2
ответ дан 24.11.2019, 02:55

Или используйте grep-f и поместите список шаблонов в файл. (Это является самым удобным, если список вещей является довольно постоянным, конечно.) grep - VF хорошо работает и инвертирует смысл соответствия точно так же, как регулярный grep-v. Просто удостоверьтесь, что у Вас нет пустых строк в файле полными шаблонов, потому что они будут соответствовать всему!

2
ответ дан 24.11.2019, 02:55

Теги

Похожие вопросы