Tvorím slovník najpoužívanejších hesiel, populárnych alebo najčastejšie používanými používateľmi (... nepýtaj sa prečo ... HAHAHA), Na tento účel beriem text z iných slovníkov atď., Ale ocitol som sa v situácii, že existuje veľa duplicitných hesiel, a musím duplicitné riadky odstrániť.
To je napríklad ... máme nasledujúci súbor: pass.txt
A jeho obsah je:
asdasd
lola
milovať
asdasd
okná
admin
linux
asdasd
milovať
Ako vidíme, opakovali sme «milovať»Y«asdasd«, Posledné trikrát. Ako odstrániť duplicitné riadky?
Je to jednoduché pomocou tohto príkazu:
cat pass.txt | sort | uniq > pass-listos.txt
Týmto sa vygeneruje súbor s názvom pass-ready.txt ktorý bude obsahovať:
admin
asdasd
linux
lola
milovať
okná
Príkaz robí VEĽMI jednoduché ...
- mačací pas.txt - »Vypísať obsah súboru.
- druh - »Zoradiť obsah podľa abecedy.
- jedinečný - »Eliminovať duplicitné riadky.
- > pass-ready.txt - »Výsledok predchádzajúcich príkazov, vložte do súboru pass-ready.txt (ktorý, keďže neexistuje, ho vytvorí)
Je to také jednoduché ... práve som zistil, že ten príkaz druh áno, je to veľmi dobré ... ale spolu s jedinečný, sú klenotom umenia 😀
Dúfam, že ste boli nápomocní.
pozdravy
Môžete tiež použiť sort -u.
Gratulujem k blogu, veľmi sa mi páči!
Áno, správne.
Nič, ďakujem pekne za komentár 😀
Vitajte 😉
pozdravy
Problém je v tom, že mení poradie slov, funguje to ... ale nakoniec sa výsledok veľmi líši od originálu v poradí (čo možno v niektorých prípadoch záleží)
Áno, skutočne, toto usporiada slová podľa abecedy, takže ak bol obsah potrebný BEZ variácií, potom toto riešenie nie je ideálne.
Neriskujte, čo ak nedáte príkaz na triedenie? prosím, porozmýšľaj trochu viac a nemaj všetko rozhryznuté.
mačka pass.txt | uniq> pass-ready.txt
nefunguje to, skúsil som to
nefunguje, pretože „opakované“ riadky musia byť súvislé
vďaka
je to celkom užitočné
Veľmi dobre! Jednoduché a jasné riešenie. Mám rada také veci 🙂
Musím sa priznať, že by som niečo urobil v Pythone, ale toto riešenie je v poriadku.
vďaka ^ - ^
Ahoj! veľmi dobre!
Mám dotaz prosím
fungovalo by to pre nasledujúci príklad:
ABCD 1111
DEFG 2222 45455
ABCD 1111
DEFG 2222
Riadky sú rovnaké, ale majú medzery a niekoľko ďalších znakov ... kontroluje sa to na to isté slovo? alebo po linke? Vysvetlím?
odteraz dakujem pekne.
Objatí
Ahoj, ako to ide
Ako som videl, porovnáva sa to riadky a nie stĺpce, takže v príklade, ktorý mi dáte, by sa odstránil buď 1. riadok, alebo 3., 2. a 4. riadok, aj keď sú takmer identické, nie sú 100% identické, pretože majú stĺpec rozdielu. 😉
Ďakujem za komentár ^ - ^
Vďaka tebe!! predtým, ako Oracle trvalo hodinu, aby odstránili duplikáty ... teraz to trvá 30 sekúnd s typom mačiek !!
Vyžadujem to v PHP: S
Uff ... Som PHP, som veľmi, veľmi krátky, nie som naozaj žiadny programátor 🙁
Je mi to ľúto
Pre php je v oficiálnej dokumentácii PHP pole_unique (...), ktoré obsahuje veľa dôležitých a efektívnych funkcií.
Pokiaľ ide o druh, pokiaľ to nepotrebujete, nie je to potrebné ... Čas potrebný na vykonanie a pamäť sú zbytočné. (za to, čo sa deje v príspevku)
Zdravím!
Wow !! slovník, ktorý sa použije ako hrubá sila !! XD
Veľmi dobrá kombinácia typu s uniq! Veľmi mi pomohlo odstrániť duplicitné riadky.
vďaka
Carlosov komentár napriek svojej arogancii nie je platný. Hovorí, že používa:
mačka pass.txt | uniq> pass-ready.txt
podmienkou uniq je však to, že súbor je objednaný. Mali ste o tom premýšľať trochu viac alebo by ste sa mali informovať predtým.
veľmi dobré, zachránil si mi veľa času behaním môjho bash
awk '! array_temp [$ 0] ++' pass.txt> pass-ready.txt
s tým sú linky eliminované bez nutnosti objednávania.
Dakujem pekne za prispevok!
Aj keď by bolo super byť schopný urobiť ho jedinečným bez zmeny poradia, ale hej, ľahký a užitočný príkaz!
Ďakujem, veľmi mi to pomohlo 😉
mám toto
C000006158880201502051056088364 C00-06158880
C000007601673201503051056088364 C00-07601673
C000008659304201504051056088364 C00-08659304
T 0809074070562015120818144287185REAÑO RUBIÑOS EMILIA DORIS
T 0809092979972016010818144287185REAÑO RUBIÑOS EMILIA DORIS
C000005398451201501231044214375 C00-05398451
C000007674996201503051000000286 C00-07674996
C000008514288201504051000000463 C00-08514288
C000011613498201506051056088070 C00-11613498
Ako dosiahnem, aby do súboru vymaľoval iba duplikáty na jedného predplatiteľa a tie, ktoré nie sú duplikátmi, nechal v inom?
predplatiteľ je na pozícií 23 (10 pozícií)
sort -u -k 1,1 File.txt> result.txt
Týmto sa súbor zoradí podľa prvého poľa
2020 a stále slúži, ďakujem pekne!
Chcete čo najskôr vyhľadať viac súborov pomocou programu Linux? Alebo Windows sa vám páči niečo iné? Prihlásiť sa k odberu súborov, khi tôi tạo súbor k dispozícii v chi nội hnoji ra nên Ch kh nhiều súbor v chắc chắn con nhiều dòng trùng lặp giữa Các súbor. Ví dụ: File 1 của tôi co 5 dòng, file 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 .
Zatiaľ nikto nevie, čo robím, aby som urobil ten súbor, ktorý som si vybral, že budem mať iný text, ale ten bude mať iný text a ja budem mať Rockyou. Teraz môžete navštíviť viac ako Windows a získať viac informácií o ďalších službách Windows. 🙂 Pred niekoľkými dňami!