Poista kaksoisrivit tiedostosta

Teen sanakirjaa yleisimmin käytetyistä salasanoista, käyttäjien suosimista tai usein käyttämistä (... Älä kysy miksi ... HAHAHA), tätä varten otan tekstiä muista sanakirjoista jne., mutta huomaan olevani tilanteessa, jossa on useita päällekkäisiä salasanoja, ja minun on poistettava päällekkäiset rivit.

Eli esimerkiksi ... meillä on seuraava tiedosto: pass.txt

Ja sen sisältö on:

asdasd
lola
rakkaus
asdasd
ikkunat
admin
linux
asdasd
rakkaus

 Kuten näemme, olemme toistaneet «rakkaus»Y«asdasd«, Jälkimmäinen 3 kertaa. Kuinka poistaa päällekkäiset rivit?

Se on yksinkertaista tällä komennolla:

cat pass.txt | sort | uniq > pass-listos.txt

Tämä luo tiedoston nimeltä pass-ready.txt joka sisältää:

admin
asdasd
linux
lola
rakkaus
ikkunat

Komennon tekeminen on hyvin yksinkertaista ...

  1. kissan pass.txt - »Luettele tiedoston sisältö.
  2. lajitella - »Lajittele sisältö aakkosjärjestyksessä.
  3. ainutlaatuinen - »Poista päällekkäiset rivit.
  4. > pass-ready.txt - »Edellisten komentojen tulos, laita se tiedostoon pass-ready.txt (joka luo sen, koska sitä ei ole olemassa)

Se on niin yksinkertaista ... huomasin juuri komennon lajitella kyllä, se on erittäin hyvä ... mutta yhdessä ainutlaatuinen, ne ovat taiteen helmi 😀

Toivottavasti olet ollut hyödyllinen.

terveiset

tapetti: Jos haluat ladata taustakuvan «Rakastan #! / Bin / bash"Tässä on linkki:

Lataa taustakuva

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.

  1.   Carlos dijo

    Voit käyttää myös lajittelua -u.

    Onnittelut blogista, rakastan sitä!

    1.    KZKG ^ Gaara dijo

      Joo oikein.
      Ei mitään, kiitos paljon kommentoinnista 😀

      Tervetuloa 😉
      terveiset

  2.   Diego dijo

    Ongelmana on, että se muuttaa sanojen järjestystä, se toimii ... mutta loppujen lopuksi tulos eroaa paljon alkuperäisestä järjestyksessä (mikä ehkä joissakin tapauksissa on merkitystä)

    1.    KZKG ^ Gaara dijo

      Kyllä, tämä järjestää sanat aakkosjärjestyksessä, joten jos sisältöä tarvittiin ILMAN muunnelmia, tämä ratkaisu ei ole ihanteellinen.

    2.    Carlos dijo

      Älä pyöri ympäriinsä, entä jos tulee mieleesi jättää lajittelukomentoa? Ajattele vielä vähän, älä pidä kaikkea pureskeltavana.

      kissan pass.txt | uniq> pass-ready.txt

      1.    Eliuber dijo

        se ei toimi, yritin sitä

      2.    bob dijo

        ei toimi, koska "toistuvien" viivojen on oltava jatkuvia

  3.   nimettömänä dijo

    kiitos

    se on varsin hyödyllinen

  4.   Giskard dijo

    Oikein hyvä! Yksinkertainen ja selkeä ratkaisu. Pidän sellaisista asioista 🙂
    Minun on myönnettävä, että olisin tehnyt jotain Pythonissa, mutta tämä ratkaisu on hieno.

    1.    KZKG ^ Gaara dijo

      kiitos ^ - ^

  5.   Tino dijo

    Hei! Oikein hyvä!
    Minulla on kysely
    se toimisi minulle seuraavassa esimerkissä:
    ABCD 1111
    DEFG 2222 45455
    ABCD 1111
    DEFG 2222

    Rivit ovat samat, mutta niissä on välilyöntejä ja muutama merkki lisää ... tarkistaako tämä samaa sanaa? vai linjalla? Minä selitän?
    etukäteen, kiitän paljon.
    halauksen

    1.    KZKG ^ Gaara dijo

      Hei Sellaisena
      Kuten näin, tämä vertaa viivoja eikä sarakkeita, joten antamassani esimerkissä tämä poistaisi joko ensimmäisen tai kolmannen, toisen ja neljännen rivin, vaikka ne ovatkin lähes identtisiä, mutta eivät ole 1% identtisiä, koska ero sarake. 😉

      Kiitos kommentista ^ - ^

      1.    TINE dijo

        Kiitos sinun!! ennen kuin oraakkeli kesti tunnin kaksoiskappaleiden poistamiseksi ... nyt kissa-lajittelulla kestää 30 sekuntia !!

  6.   MegaBedder dijo

    Vaadin sitä PHP: ssä: S

    1.    KZKG ^ Gaara dijo

      Uff ... Käytän PHP: tä, koska olen hyvin, hyvin lyhyt, en todellakaan ole ohjelmoija

      Olen pahoillani.

    2.    brunocascio dijo

      PHP: n virallisessa PHP-dokumentaatiossa on array_unique (…), josta löydät monia tärkeitä ja tehokkaita toimintoja.

      Lajittelun osalta se ei ole välttämätöntä, ellet tarvitse sitä ... Suoritusaika ja muisti ovat hukkaan. (mitä postissa tehdään)

      Tervehdys!

  7.   nörtti dijo

    Vau !! sanakirja, jota käytetään raakana voimana! XD

  8.   Gustavo dijo

    Erittäin hyvä yhdistelmä lajittelua uniqin kanssa! Se auttoi minua poistamaan päällekkäisiä viivoja.

    kiitos

  9.   Gustavo dijo

    Carlosin kommentti ei hänen pätevyydestään huolimatta ole pätevä. Hän sanoo käyttävänsä:

    kissan pass.txt | uniq> pass-ready.txt

    uniqin edellytys on kuitenkin, että tiedosto on järjestetty. Sinun olisi pitänyt miettiä sitä hieman enemmän tai kertoa itsellesi ennen.

  10.   Eliuber dijo

    erittäin hyvä, säästit minulta paljon aikaa juoksuni

  11.   Kivikivet dijo

    awk '! array_temp [$ 0] ++' pass.txt> pass-ready.txt
    tällöin linjat poistetaan ilman tilaamista.

  12.   mininiyo dijo

    Paljon kiitoksia panoksesta!

    Vaikka olisi hienoa pystyä tekemään siitä ainutlaatuinen muuttamatta järjestystä, mutta hei, helppo ja hyödyllinen komento!

  13.   Felipe Gutierrez dijo

    Kiitos, se auttoi minua paljon 😉

  14.   Ernesto dijo

    minulla on tämä
    C000006158880201502051056088364 C00-06158880
    C000007601673201503051056088364 C00-07601673
    C000008659304201504051056088364 C00-08659304
    T 0809074070562015120818144287185 REAÑO RUBIÑOS EMILIA DORIS
    T 0809092979972016010818144287185 REAÑO RUBIÑOS EMILIA DORIS
    C000005398451201501231044214375 C00-05398451
    C000007674996201503051000000286 C00-07674996
    C000008514288201504051000000463 C00-08514288
    C000011613498201506051056088070 C00-11613498

    Kuinka saan sen maalata tiedostoon vain kaksoiskappaleet tilaajaa kohti ja jättämään ne, jotka eivät ole kopioita, toiseen?

    tilaaja on pos 23 (10 paikkaa)

  15.   Fernando dijo

    lajittele -u -k 1,1 File.txt> result.txt

    Tämä lajittelee tiedoston ensimmäisen kentän mukaan

  16.   Olen diego dijo

    2020 ja palvelee edelleen, kiitos paljon!

  17.   sarah dijo

    Bạn co thể hướng dẫn cách loại bỏ các dòng trùng lặp của nhiều -tiedostoteksti trong Linux vai Windows được không? Cũng như trường hợp của bạn, khi tôi tạo file từ điển vì tôi chia nội dung ra nên Có khá nhiều file và chắc chắn con nhiều dòng trùng lặp giữa Các file. Kuva: Tiedosto 1 của tôi co 5 dòng, tiedosto 2 co 15 dòng (co 2 dòng trùng lặp với File 1. Tôi muốn co kết quả, File 1 vẫn giữ nguyên 5 dòng, File 2 thì only bỏ 2 dòng giống file 1 .
    Như bạn biết co nhiều li do chúng ta ko thể gộp các file txt đó lại với nhau, vì những file text ừ điển rất ư là nhiều ký, chẳng hạn như Rockyou. Thực tếi muốn thực hiện điều này bên Windows hơn, và chắc chắn ko thể gộp chúng ở bên Windows được. 🙂 Hy vọng nhận được phản hồi từ bạn!