Távolítsa el az ismétlődő sorokat egy fájlból

Készítek egy szótárt a leggyakrabban használt jelszavakról, amelyek a felhasználók által legnépszerűbbek vagy a leggyakrabban használtak (... Ne kérdezd, miért ... HAHAHA), ehhez más szótárakból stb. szedek szöveget, de olyan helyzetbe kerülök, hogy sok ismétlődő jelszó van, és meg kell szüntetnem a duplikált sorokat.

Vagyis például ... a következő fájl van: pass.txt

És tartalma:

asdasd
Lola
szerelem
asdasd
ablakok
admin
linux
asdasd
szerelem

 Mint látjuk, megismételtük aszerelem»Y«asdasd«, Utóbbi 3-szor. Hogyan lehet eltávolítani az ismétlődő sorokat?

Ehhez egyszerű, ezzel a paranccsal:

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

Ez létrehoz egy nevű fájlt pass-ready.txt amely a következőket tartalmazza:

admin
asdasd
linux
Lola
szerelem
ablakok

Amit a parancs tesz, az nagyon egyszerű ...

  1. macskabérlet.txt - »Sorolja fel a fájl tartalmát.
  2. fajta - »A tartalom betűrend szerinti rendezése.
  3. egyedi - »Távolítsa el az ismétlődő sorokat.
  4. > pass-ready.txt - »Az előző parancsok eredményét tegye a pass-ready.txt fájlba (ami, mivel nem létezik, meg fogja teremteni)

Ez ilyen egyszerű ... Most fedeztem fel ezt a parancsot fajta igen, nagyon jó ... de együtt egyedi, a művészet ékkövei 😀

Remélem, segítőkész voltál.

Üdvözlet

Tapéta: Ha le szeretné tölteni a háttérképet «Szeretem #! / Bin / bash"Itt a link:

Háttérkép letöltése

Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   Carlos dijo

    Használhatja a sort -u parancsot is.

    Gratulálok a bloghoz, imádom!

    1.    KZKG ^ Gaara dijo

      Ja, igaz.
      Semmi, köszönöm szépen a hozzászólást 😀

      Üdvözöljük 😉
      Üdvözlet

  2.   Diego dijo

    Az a probléma, hogy megváltoztatja a szavak sorrendjét, működik ... de végül az eredmény a rendben nagyon eltér az eredetitől (ami talán bizonyos esetekben számít)

    1.    KZKG ^ Gaara dijo

      Igen, ez ábécé sorrendbe állítja a szavakat, így ha a tartalomra variációk nélkül volt szükség, ez a megoldás nem az ideális.

    2.    Carlos dijo

      Ne csavarjon, mi van, ha nem adja meg a rendezés parancsot? kérlek, gondolj még egy kicsit, és ne rágd le mindent.

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

      1.    Eliuber dijo

        nem működik, kipróbáltam

      2.    gabona dijo

        nem működik, mert az "ismételt" vonalaknak folyamatosaknak kell lenniük

  3.   névtelen dijo

    gracias

    elég hasznos

  4.   giskard dijo

    Nagyon jó! Egyszerű és világos megoldás. Szeretem az ilyen dolgokat 🙂
    Be kell vallanom, hogy valamit csináltam volna a Pythonban, de ez a megoldás rendben van.

    1.    KZKG ^ Gaara dijo

      Köszönöm ^ - ^

  5.   trükk dijo

    Helló! nagyon jó!
    Kérem, legyen egy kérdésem
    nekem a következő példa szerint működne:
    ABCD 1111
    DEFG 2222 45455
    ABCD 1111
    DEFG 2222

    A sorok megegyeznek, de van szóközük és még néhány karakterük ... ellenőrzi ez ugyanazt a szót? vagy vonalon? Elmagyarázom?
    ezentúl nagyon köszönöm.
    Egy ölelés

    1.    KZKG ^ Gaara dijo

      Szia, hogy vagy,
      Amint láttam, ez összehasonlítja a sorokat és nem az oszlopokat, így az Ön által megadott példában ez eltávolítaná az 1. sort vagy a 3., 2. és 4. sort, bár szinte azonosak, de nem 100% -ban azonosak, mert különbség oszlop. 😉

      Köszönöm a megjegyzést ^ - ^

      1.    TINO dijo

        Neked köszönhetően!! mielőtt egy óráig tartott az orákulum a duplikátumok eltávolításához ... most 30 másodpercbe telik a macskafajta !!

  6.   MegaBedder dijo

    PHP-ben kérem: S

    1.    KZKG ^ Gaara dijo

      Uff ... PHP vagyok, nagyon-nagyon rövid vagyok, nem igazán vagyok programozó 🙁

      Sajnálom.

    2.    brunocascio dijo

      A php esetében az array_unique (…) található a hivatalos PHP dokumentációban, amely számos fontos és hatékony funkciót tartalmaz.

      Ami a rendezést illeti, hacsak nincs szüksége rá, akkor nem szükséges ... A végrehajtási idő és a memória pazarlódik. (amire a bejegyzésben kerül sor)

      Üdvözlet!

  7.   kockafej dijo

    Azta !! egy szótár, amelyet nyers erőnek kell használni !! XD

  8.   Gustavo dijo

    Nagyon jó a fajta és az uniq kombinációja! Sokat segített a duplikált sorok eltávolításában.

    Köszönöm

  9.   Gustavo dijo

    Carlos megjegyzése arroganciája ellenére sem helytálló. Azt mondja, hogy használja:

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

    az uniq előfeltétele azonban a fájl rendezése. Kicsit jobban át kellett volna gondolkodnia rajta, vagy érdeklődnie kellett korábban.

  10.   Eliuber dijo

    nagyon jó, sok időt spóroltál meg a bash futásával

  11.   Kövek dijo

    awk '! array_temp [$ 0] ++' pass.txt> pass-ready.txt
    ezzel a vonalak megrendelés nélkül megszűnnek.

  12.   minimális dijo

    Nagyon köszönöm a hozzájárulást!

    Bár jó lenne, ha egyedivé tudnánk tenni a sorrend megváltoztatása nélkül, de hát, könnyű és hasznos parancs!

  13.   Felipe Gutierrez dijo

    Köszönöm, nagyon sokat segített nekem 😉

  14.   Ernesto dijo

    nekem van
    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

    Hogyan érhetem el, hogy egy előfizetőnként csak a másolatokat festem egy fájlba, és azokat, amelyek nem duplikátumok, egy másikban hagyom?

    az előfizető a 23. pozícióban van (10 pozíció)

  15.   Fernando dijo

    sort -u -k 1,1 File.txt> eredmény.txt

    Ez az első mező szerint rendezi a fájlt

  16.   Diego vagyok dijo

    2020 és még mindig szolgál, köszönöm szépen!

  17.   Sára 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 fájlszöveg trong Linux vagy 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. Ví dụ: 1. fájl: của tôi co 5 dòng, fájl: 2 co 15 dòng (co 2 dòng trùng lặp với 1. fájl. .
    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 từ đ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!