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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Strony: 1
Witam! mam taki problem - mam plik tekstowy w który wygląda tak:
146 146 157 157 159 159 189 189 195 195 216 216 657 657 890 890 890 890 890 890 890 890 890 890 890 890 926 926 926 926 1075 1075 1207 1207 1207 1207 1283 1283
Właściwie to plik wygląda tak że obok tych cyfr są dane czyli np
890 - jakieś dane kowalski 890 - dalsze dane kowalski 890 - itd itd. 926 - nowe dane nowak 926 - inne dane nowak
Ale żeby było prościej wycięłem same liczby i wrzuciłem do pliku tekstowego - bo chodzi mi tu o liczby.
I teraz tak - czy jest skrypt który potraktował by np serie 890 jako jedno zdarzenie , 926 jako jedno zdarzenie itd i zliczył ile tego było??
może to namaluje:))
146 ------------- 146 | 146 |------------- 1 146 ------------- 157 ------------- 157 |-------------- 1 157 ------------- 890 --------------- 890 | 890 | 890 |------------- 1 890 | 890 | 890 --------------- 926 --------------- 926 | 926 |-------------- 1 926 ---------------
czyli operacji było: 4
Jest możliwość zrobienia czegoś takiego??( oczywiście plik jest długi i liczby są różne )
Był bym bardzo wam wdzięczny za pomoc
Ostatnio edytowany przez azhag (2008-04-11 09:51:49)
Offline
cat plik.txt | uniq | wc -l ? Możesz ewentualnie obcinać z końca ileś cyfr sedem czy czymkolwiek. :)
Offline
pawian@debian /tmp $ cat plik 890 - jakieś dane kowalski 890 - dalsze dane kowalski 890 - itd itd. 926 - nowe dane nowak 926 - inne dane nowak 999 - dupa pawian@debian /tmp $ cat plik | awk '{print $1}' | uniq -c | sort -n 1 999 2 926 3 890 pawian@debian /tmp $ cat plik | awk '{print $1}' | uniq -c | sort -rn 3 890 2 926 1 999
takie coś? (dla rosnącej kolejności dajesz sort -n, dla malejącej — sort -rn)
---
aaa, już wiem o co chodzi :)
pawian@debian /tmp $ cat plik | awk '{print $1}' | uniq | wc -l 3
hm, i wychodzi na to, że zielony był pierwszy, tyle że nie działał na tylko pierwszym wyrażeniu :)
Ostatnio edytowany przez azhag (2008-04-11 10:05:22)
Offline
Strony: 1