Jeg laver en ordbog over de mest brugte adgangskoder, de mest populære eller ofte brugt af brugerne (... Spørg ikke hvorfor ... HAHAHA), for dette tager jeg tekst fra andre ordbøger osv., men jeg befinder mig i den situation, at der er mange duplikatadgangskoder, og jeg er nødt til at fjerne duplikatlinjerne.
Det er for eksempel ... vi har følgende fil: pass.txt
Og dens indhold er:
asdasd
lola
kærlighed
asdasd
vinduer
admin
linux
asdasd
kærlighed
Som vi ser, har vi gentaget «kærlighed»Y«asdasd«, Sidstnævnte 3 gange. Hvordan fjernes duplikatlinjer?
At gøre det er enkelt med denne kommando:
cat pass.txt | sort | uniq > pass-listos.txt
Dette genererer en fil, der kaldes pass-ready.txt som vil indeholde:
admin
asdasd
linux
lola
kærlighed
vinduer
Hvad kommandoen gør er MEGET simpelt ...
- kat pass.txt - »Angiv filens indhold.
- sort - »Sorter indholdet alfabetisk.
- Uniq - »Fjern duplikatlinjer.
- > pass-ready.txt - »Resultatet af de foregående kommandoer, læg det i filen pass-ready.txt (som, da det ikke eksisterer, vil skabe det)
Det er så simpelt ... Jeg har lige opdaget, at kommandoen sort ja, det er meget godt ... men sammen med Uniq, de er en kunstjuvel 😀
Jeg håber du har været hjælpsom.
hilsen
Du kan også bruge sortering -u.
Tillykke med bloggen, jeg elsker det!
Yeah sikkert.
Intet, meget tak for at kommentere 😀
Velkommen 😉
hilsen
Problemet med det er, at det ændrer rækkefølgen af ordene, det virker ... men i sidste ende adskiller resultatet sig meget fra originalen i rækkefølgen (hvilket måske i nogle tilfælde betyder noget)
Ja, dette ordner ordene alfabetisk, så hvis indholdet var nødvendigt UDEN variationer, er denne løsning ikke den ideelle.
Skru ikke rundt, hvad hvis det sker for dig, at du ikke lægger sorteringskommandoen? tænk lidt mere og ikke alt tygges op.
kattepas.txt | uniq> pass-ready.txt
det virker ikke, jeg prøvede det
fungerer ikke, fordi "gentagne" linjer skal være kontinuerlige
tak
det er ret nyttigt
Meget godt! En enkel og klar løsning. Jeg kan godt lide sådanne ting 🙂
Jeg må indrømme, at jeg ville have gjort noget i Python, men denne løsning er fint.
Tak ^ - ^
Hej! meget godt!
Jeg har en forespørgsel tak
det ville fungere for mig i følgende eksempel:
ABCD 1111
DEFG 2222 45455
ABCD 1111
DEFG 2222
Rækkerne er de samme, men de har mellemrum og nogle flere tegn ... kontrollerer dette for det samme ord? eller ved linje? Forklarer jeg?
fra nu af takker jeg dig meget.
Et knus
Hej hvordan går det
Som jeg så, sammenligner dette linjer og ikke kolonner, så i eksemplet, som du giver mig, fjerner det enten 1. linje eller 3., 2. og 4. linje, selvom de er næsten identiske, de er ikke 100% identiske, fordi de har en kolonne med forskel. 😉
Tak for kommentaren ^ - ^
Tak til dig!! før det tog en time for oracle at fjerne dubletter ... nu tager det 30 sekunder med kattesort !!
Jeg har brug for det i PHP: S
Uff ... Jeg er PHP, jeg er meget, meget kort, jeg er ikke rigtig programmør 🙁
Jeg er ked af det.
For php er der array_unique (…) i den officielle PHP-dokumentation, du finder mange vigtige og effektive funktioner.
Med hensyn til sortering, medmindre du har brug for det, er det ikke nødvendigt ... Eksekveringstid og hukommelse er spildt. (for hvad der gøres i posten)
Greetings!
Wow !! en ordbog, der skal bruges som rå styrke !! XD
Meget god kombination af sort med uniq! Det hjalp mig meget med at fjerne duplikatlinjer.
Tak
Til trods for sin arrogance er Carlos 'kommentar ikke gyldig. Han siger at bruge:
kattepas.txt | uniq> pass-ready.txt
dog er en forudsætning for uniq, at filen bestilles. Bør have tænkt på det lidt mere eller spurgt før
meget god, du sparede mig meget tid på at køre min bash
awk '! array_temp [$ 0] ++' pass.txt> pass-ready.txt
med dette fjernes linjerne uden at skulle bestille.
Mange tak for bidraget!
Selvom det ville være sejt at kunne gøre det unikt uden at ændre rækkefølgen, men hej, en nem og nyttig kommando!
Tak, det hjalp mig meget 😉
jeg har det
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
Hvordan får jeg det til kun at male duplikaterne pr. Abonnent i en fil og efterlade dem, der ikke er duplikater, i en anden?
abonnenten er i pos 23 (10 positioner)
sorter -u -k 1,1 File.txt> result.txt
Dette sorterer filen efter det første felt
2020 og serverer stadig, mange tak!
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 file text trong Linux or 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ụ: 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 .
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ế 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!