Bir kerede birkaç desen grep nasıl?


2

Oradaki paternle eşleşen her çizgiyi elde etmek istiyorum:

  • bir şey
  • bir yere
  • bir yerde

/data/rawlog.txt adresinden

Bu komutu denedim, ancak başarısız oldu:

grep -e "[something|someplace|somewhere]" /data/rawlog.txt

Neyin yanlış gittiğini bilen var mı?

Yanıtlar:


7

İlk önce, parantez gerekmez. İkincisi, genişletilmiş düzenli ifadelere ihtiyacınız var veya borulardan kaçın. Bunlardan biri işe yaramalı:

egrep -e "something|someplace|somewhere" /data/rawlog.txt
grep -e "something\|someplace\|somewhere" /data/rawlog.txt

Çatal dışına bir şey yerleştirmek istiyorsanız, gruplandırmayı unutmayın. Örneğin, bu kalıpların sadece satırın sonunda olmasını istiyorsanız:

egrep -e "(something|someplace|somewhere)$" /data/rawlog.txt

Parantezin aynı zamanda egrep veya kaçma gerektirdiğini de unutmayın.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.