Bir aramaya yeni satırları nasıl daha az dahil edebilirim?


16

Daha az kullanan bir aramanın parçası olarak yeni satırları (veya satır sonu) nasıl arayabilirim?

Örneğin, aramak istiyorum length=9\n, ama sadece arama yapmak istemiyorum length==9çünkü bu eşleşmeleri alacaktı length=90\n.

Ubuntu 9.10 (Karmic Koala) üzerinde GNU bash, sürüm 4.0.33 (1) -release (x86_64-pc-linux-gnu) kullanıyorum

Dostça kılavuzu okumayı denedim, ama dedi

/pattern

Dosyada, kalıbı içeren N'inci satırı arayın. N varsayılan değer 1'dir. Desen, sisteminiz tarafından sağlanan normal ifade kütüphanesi tarafından tanınan normal bir ifadedir. Arama görüntülenen ikinci satırda başlar (ancak bunu değiştiren -a ve -j seçeneklerine bakın).

ve bunun ötesinde nasıl RTFM yapacağımı bilmiyorum.


1
Ayrıca, yararlı olması için kelime sınırlarına bağlı aramalar da bulabilirsiniz. /\<length=9\>"length = 90" veya "stringlength = 9" ile eşleşen bir satırın herhangi bir yerinde "length = 9" ifadesini bulur. Bkz man 7 regexve man grepdaha fazlası.
sonraki duyuruya kadar duraklatıldı.

1
Sorunun başlığına bir cevap arayanlar için: Bir aramaya yeni satırları daha az dahil edebileceğinize inanmıyorum. Bu, daha az sayıda çok satırlı aramanın mümkün olmadığı anlamına gelir.
drevicko

Yanıtlar:


11

Yapabilirsin:

/pattern$

Desen değiştirilir pattern, ancak $kalmalıdır, aramaya deseni ve sonra satırın sonunu aramasını söyler.

Böylece yapardınız:

/length=9$
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.