[Çözüldü] sed komutu ile satir düzenleme

Başlatan barisyilmaz78, 19 Haziran 2012 - 16:34:26

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

barisyilmaz78

Merhaba Arkadaslar,

bir log dosyasindaki satirlari düzenlemek istiyorum..

Bu komut ile sunu yapmak istiyorum, 
Satirlarin icinde  ; karakterleri var.
Satirlarin icinde SubN gecen ve ücüncü ; den   (ücüncü noktali virgülden) itibaren bir sonraki noktali virgüle kadar olan icerigi yeni bir dosyaya aktarmak istiyorum.. Bunu tabi tüm satirlara uygulamak istiyorum.

Sed komutu ile bunu yapmak mümkün mü? beceremedim :-(
Aslinda Sed ya da baska bir komut sonucta bu verileri bir sekilde aktarmaliyim.
Yardimci olursaniz sevinirim.


heartsmagic

Dosyadan örnek bir bölüm görülebilirse yardım edecekleri rahatlatır bu durum. Eğer yapı standartsa yani her satır aynı şekildeyse sanki istediğin şey cut ile yapılabilir gibi geliyor bana ama dediğim gibi görmeden yorum yapmak zorlaşıyor.
Hayattan çıkarı olmayanların, ölümden de çıkarı olmayacaktır.
Hayatlarıyla yanlış olanların ölümleriyle doğru olmalarına imkân var mıdır?


Böylece yalan, dünyanın düzenine dönüştürülüyor.

barisyilmaz78

ornek bir satir,

2010-06-20;09:06:31;Mr;SubN1,N023,MeConS67,ManElem=1,TranNet=1,Syn=1;Sys in Hold Mode;replaceable_problem;;Unacknowledged;SubN1_R,SubN=023,MeCon=S67_1664;3377

Yukarida iki satir gibi duruyor aslinda bu bir satirdir..
simdiden tesekkür ederim...

cagriemer

#3
cat dosya_adi |grep subN | cut -d";" -f 4

Yukaridaki komut is gorur mu?

ironic

Awk uygulamasını da ben vereyim.


awk -F';' '/SubN/ {if($4) print $4}' <girdi_dosyasi >cikti_dosyasi


deneme:


echo '2010-06-20;09:06:31;Mr;SubN1,N023,MeConS67,ManElem=1,TranNet=1,Syn=1;Sys in Hold Mode;replaceable_problem;;Unacknowledged;SubN1_R,SubN=023,MeCon=S67_1664;3377' | awk -F';' '/SubN/ {if($4) print $4}'

SubN1,N023,MeConS67,ManElem=1,TranNet=1,Syn=1



barisyilmaz78

Tesekkür ederim.. umarim sizin SIKINTILARINIZDA DA sizede böyle yardim edenler olur..