Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2009-09-13 09:35:52

  przemek11 - Użytkownik

przemek11
Użytkownik
Zarejestrowany: 2009-03-01

parsowanie pliku w awk

mam plik z poamirami, ktory wyglada mniej wiecej tak:

4    0    11    2
4    0    11    29
4    0    11    16
4    0    11    13
4    0    11    4
4    0    11    7
4    0    11    5
4    0    11    23
4    0    11    20
4    0    11    8
4    0    11    10
4    1    11    2
4    1    11    29
4    1    11    16
4    1    11    13
4    1    11    4
4    1    11    7
4    1    11    5
4    1    11    23
4    1    11    20
4    1    11    8
4    1    11    10

wartosc w trzeciej kolumnie oznacza liczbe pomiarow dla okreslonego czasu (dwie pierwsze kolumny)
liczby w czwartej kolumnie to pomiary
moze ktos podpowie, w jaki sposob przy pomocy awk przerobic plik o takie strukturze na cos takiego:

4;0;11;2;29;16;13;4;7;5;23;20;8;10
4;1;11;2;29;16;13;4;7;5;23;20;8;10

z gory dzieki za pomoc !

Offline

 

#2  2009-09-18 23:29:25

  bercik - Moderator Mamut

bercik
Moderator Mamut
Skąd: Warszawa
Zarejestrowany: 2006-09-23
Serwis

Re: parsowanie pliku w awk

w pierszym przyblizeniu (nie zadziala gdy pierwsze dwa pola pierwszego rekordu beda zerami, troche dziwnie daje nowe linie oraz o jeden srednik nadmiarowo)  wyglada to tak:

Kod:

awk '$1==A && $2==B {printf("%s;", $4); next} {A=$1; B=$2; printf("\n%s;%s;%s;%s", $1, $2, $3, $4)}'

"Wszyscy wiedzą, że czegoś zrobić nie można. Ale przypadkowo znajduje się jakiś nieuk, który tego nie wie. I on właśnie robi odkrycie." (A.Einstein)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)