Я хочу, чтобы каждая строка соответствовала шаблону:
- что-то
- где-то
- где-то
из /data/rawlog.txt
Я пытаюсь эту команду, но не удалось:
grep -e "[something|someplace|somewhere]" /data/rawlog.txt
Кто-нибудь знает, что идет не так?
Во-первых, вам не нужны скобки. Во-вторых, вам нужны расширенные регулярные выражения или экранирование каналов. Одно из этого должно работать:
egrep -e "something|someplace|somewhere" /data/rawlog.txt
grep -e "something\|someplace\|somewhere" /data/rawlog.txt
Если вы хотите разместить что-то вне вилки, не забудьте сгруппировать это. Например, если вы хотите, чтобы эти шаблоны появлялись только в конце строки:
egrep -e "(something|someplace|somewhere)$" /data/rawlog.txt
Обратите внимание, что скобки также должны быть egrep или экранировать.