/ / počítať duplicitné reťazce a miesto na začiatku výstupného súboru - windows, perl, duplicates, ubuntu-11.10

počítať duplicitné reťazce a miesto na začiatku výstupného súboru - windows, perl, duplicates, ubuntu-11.10

aký príkaz s perl mi dovolí počítať riadky? vo výstupnom súbore by mal byť na začiatku riadku, koľkokrát sa susediace čiary objavili v predchádzajúcom zoradenom súbore použitom ako vstup.

príklad vstupu:

line 1
line 2
line 2
line 2
line 3
line 3
line 3

ouput:

1= line 1
3= line 2
3= line 3

odpovede:

2 pre odpoveď č. 1

V perlu s jednou vložkou:

perl -ne "$c{$_}++; END {print "$c{$_}= $_" for keys %c}" your_file

Ak chcete prehľadať výsledky pre triedený súbor tak, aby zostal v poriadku a nie je úplne nabitý do pamäte:

perl -ne "if (defined $l && $l ne $_) {print "$c= $l"; $c=0} $l=$_;$c++; END{print "$c= $l"}" your_file