Rivien määrä

kirjanpitäjäää

Miten linuxissa bashissa saa laskettua montako kertaa sama rivi esiintyy tiedostossa?

Esim jos on vaikka data.txt:
kana
lehmä
kissa
lehmä
kana
kana

Niin lopputulos olisi

3 kana
2 lehmä
1 kissa

10

283

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • EtsiItse

      man sort
      man uniq
      man grep
      ja pari muuta

    • Rivien lkm vaikka wc -l data.txt. Tietty sana löytyy vaikka grep -l sana *| wc -l. kaikkien sanojen laskeminen vaatii tietysti while read file; do tyyppisen loopin. Jos tuo on kotitehtäväsi en auta enempää.

    • Kelpaako-tämä

      Tätäkin voit kokeilla:

      cat data.txt | awk ' { J[$0] } END { for (i in J) print J[i],i } ' | sort

      Linux Mint 18 Sarah
      Xfce 64-bit

      • Kelpaako-tämä

        Huomasin vasta nyt että aakkostus oli väärin päin joten nyt sitten oikein päin

        cat data.txt | awk ' { J[$0] } END { for (i in J) print J[i],i } ' | sort -r

        tarvittiin valitsin -r kääntämään tuo aakkostus, ei muuta.

        Linux Mint 18 Sarah
        Xfce 64-bit


      • Kelpaako-tämä
        Kelpaako-tämä kirjoitti:

        Huomasin vasta nyt että aakkostus oli väärin päin joten nyt sitten oikein päin

        cat data.txt | awk ' { J[$0] } END { for (i in J) print J[i],i } ' | sort -r

        tarvittiin valitsin -r kääntämään tuo aakkostus, ei muuta.

        Linux Mint 18 Sarah
        Xfce 64-bit

        Ja hienostellaan vielä vähän, ensin rivi ja sitten määrä näin:

        cat data.txt | awk ' { J[$0] } END { for (i in J) print i, ".. \t",J[i] } ' | sort -r

        no nyt tää varmaan jo riittää.


    • Fiksuinihminen

      Helpoin tapa:

      # sort data.txt | uniq -c | sort -nr > rivit.txt

      • Niinpä-tietysti

        Tiedätkö miten perkeleen vaikeeta oli minun saada tuommonen seka-sotku tehtyä, ja sinä tulet ja teet parilla merkillä saman, ja puhut vielä Fiksusta,

        Ok, tuohan on hyvä, ellei paras, tai vieläkin parempi.

        Linux Mint 18 Sarah
        Xfce 64-bit


    • Anonyymi

      Minne tietotekniikka on palstalta kadonnut?

    • Anonyymi

      Katsoo silimillään ja laskee. Helppoa.

    • Anonyymi

      Yksi aika simppeli tapa:

      sort tiedosto.txt | uniq -c

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Orpo räyhää: kansan on muututtava

      Orpon mukaan kansa ei elä kokoomuksen kanssa samassa todellisuudessa, ja sen vuoksi kansan on muututtava. Kas kun ei san
      Maailman menoa
      250
      2859
    2. Muovikassikartelli

      Kauppaketjut ovat yhdessä sopineet muovikassin yksikköhinnaksi 59 senttiä. Milloin viranomaiset puuttuvat tähän kartell
      Talousrikokset
      3
      1604
    3. Aidon persun tunnistaa Marinin palvonnasta

      Oli kyse sitten Halla-ahosta tai Putinista. Ensimmäisenä aidolle persulle tulee mieleen Marin.
      Maailman menoa
      2
      1295
    4. Et taida paljoa

      treffeillä käydä? 😆 mieheltä Naiselle
      Ikävä
      101
      1174
    5. Nainen, nyt esitän muutaman skenaarion

      Asumme yhdessä ja seurustelemme. 1. On ilta ja olet sohvalla makoilemassa ja räpläät kännykkääsi. Makuuhuoneesta kuulu
      Ikävä
      123
      1151
    6. Oikea kaste on syntisten kaste

      Oikea kaste on syntisten kaste. Vain syntisiä tulee kastaa. Itsensä uskoviksi ja vanhurskaiksi julistaneita ei tule ka
      Kaste
      58
      1015
    7. Kristillinen kaste toimitetaan upottamalla veteen - pään valelukaste ei kelpaa

      Kristillinen upotuskaste perustuu juutalaiseen puhdistautumiseen, jossa upottaudutaan veden alle kokonaan. Paavali verta
      Kaste
      153
      1012
    8. Mikä tekee sen

      Vetovoiman kaivatussasi?
      Ikävä
      66
      994
    9. Upotuskaste on raamatullisin kaste

      Jokainen raamattua lukenut tietää sen. Päivänselvä asia. Vauvalle annettu kaste ei löydy raamatusta.
      Kaste
      717
      927
    10. Harmittaako joku

      Harmittaako joku asia tai asiat, mitä on tapahtunut tai jäänyt tapahtumatta?
      Ikävä
      132
      878
    Aihe