SORU
14 Kasım 2009, CUMARTESİ


nasıl eşleştirilir sadece sed, awk kullanmak veya baskı için aval aval?

Ben arama-ve-değiştir sed, awk, ya da aval aval kullanmak gibi şeyler yapmak için nasıl örnekler ve man sayfaları bir sürü bakın.

Ama benim durumumda, belirli bir değeri ayıklamak için bir metin dosyasına karşı çalıştırmak istediğim için normal bir ifade var. Arama-ve-değiştir yapmak istemiyorum. Bu bash denir. Hadi bir örnek:

Düzenli ifade örnek:

.*abc([0-9] )xyz.*

Örnek girdi dosyası:

a
b
c
abc12345xyz
a
b
c

Bu sesler gibi basit, sed/awk/doğru aval aval aramak için nasıl anlamaya olamaz. Yapmayı umuyordum, benim içinde bash script var: gelen budur

myvalue=$( sed <...something...> input.txt )

Denediğim şeyler vardır:

sed -e 's/.*([0-9]).*/\\1/g' example.txt # extracts the entire input file
sed -n 's/.*([0-9]).*/\\1/g' example.txt # extracts nothing

CEVAP
14 Kasım 2009, CUMARTESİ


Benim sed (Mac OS X) ile işe yaramadı. * yerine denedim ve p yazdırma maç için etiket ekledim:

sed -n 's/^.*abc\([0-9]*\)xyz.*$/\1/p' example.txt

olmadan en az bir sayısal karakter eşleştirme için kullanırdım:

sed -n 's/^.*abc\([0-9][0-9]*\)xyz.*$/\1/p' example.txt

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GoProTutorials

    GoProTutoria

    18 NİSAN 2011
  • Joseph Herscher

    Joseph Hersc

    14 Mart 2007
  • Wild Academy

    Wild Academy

    8 Aralık 2009