Ik maak een woordenboek met de meest gebruikte wachtwoorden, de populaire of meest gebruikte wachtwoorden (… Vraag niet waarom… HAHAHA), hiervoor neem ik tekst uit andere woordenboeken enz., maar ik bevind me in de situatie dat er veel dubbele wachtwoorden zijn en ik moet de dubbele regels verwijderen.
Met andere woorden, bijvoorbeeld ... we hebben het volgende bestand: pas.txt
En de inhoud is:
asdasd
lola
liefde
asdasd
ruiten
beheerder
linux
asdasd
liefde
Zoals we zien, hebben we herhaald «liefde"En"asdasd«, De laatste 3 keer. Hoe verwijder ik dubbele regels?
Om het te doen is eenvoudig, met dit commando:
cat pass.txt | sort | uniq > pass-listos.txt
Dit genereert een bestand met de naam pass-ready.txt die zal bevatten:
beheerder
asdasd
linux
lola
liefde
ruiten
Wat het commando doet is HEEL eenvoudig ...
- kattenpas.txt - »Maak een lijst van de inhoud van het bestand.
- sorteren - »Sorteer de inhoud alfabetisch.
- uniek - »Verwijder dubbele regels.
- > pass-ready.txt - »Het resultaat van de vorige commando's, zet het in het bestand pass-ready.txt (die, aangezien het niet bestaat, het zal creëren)
Het is zo simpel ... Ik heb net ontdekt dat het commando sorteren ja, het is erg goed ... maar samen met uniek, ze zijn een juweel van kunst 😀
Ik hoop dat je behulpzaam bent geweest.
groeten
U kunt ook sort -u gebruiken.
Gefeliciteerd met de blog, ik vind het geweldig!
Ja klopt.
Niets, heel erg bedankt voor je reactie 😀
Welkom 😉
groeten
Het probleem daarmee is dat het de volgorde van de woorden verandert, het werkt ... maar uiteindelijk verschilt het resultaat veel van het origineel in de volgorde (wat misschien in sommige gevallen ertoe doet)
Ja inderdaad, hierdoor worden de woorden alfabetisch geordend, dus als de inhoud ZONDER variaties nodig was, is deze oplossing niet de ideale oplossing.
Draai niet rond, wat als het in je opkomt om het sorteercommando niet te gebruiken? denk alsjeblieft een beetje meer en laat niet alles opeten.
kat pass.txt | uniq> pass-ready.txt
het werkt niet, ik heb het geprobeerd
werkt niet omdat "herhaalde" regels continu moeten zijn
bedankt
het is best handig
Zeer goed! Een simpele en duidelijke oplossing. Ik hou van dat soort dingen 🙂
Ik moet toegeven dat ik iets in Python zou hebben gedaan, maar deze oplossing is prima.
bedankt ^ - ^
Hallo! zeer goed!
Ik heb een vraag, alstublieft
het zou voor mij werken voor het volgende voorbeeld:
ABCD1111
DEFG 2222 45455
ABCD1111
DEFG 2222
De rijen zijn hetzelfde, maar ze hebben spaties en nog een paar tekens ... controleert dit op hetzelfde woord? of per regel? Ik leg uit?
vanaf nu dank ik u hartelijk.
Een knuffel
Hallo daar,
Zoals ik zag, vergelijkt dit regels en niet kolommen, dus in het voorbeeld dat je me geeft, zou dit ofwel de 1e regel of de 3e, 2e en 4e regel verwijderen, ook al zijn ze bijna identiek, ze zijn niet 100% identiek omdat ze een verschil kolom. 😉
Bedankt voor de reactie ^ - ^
Dankzij jou!! voordat het orakel een uur duurde om duplicaten te elimineren ... nu duurt het 30 seconden met de kattensoort !!
Ik heb het nodig in PHP: S
Uff ... ik ben PHP, ik ben heel, heel kort, ik ben niet echt een programmeur 🙁
Het spijt me.
Voor php is er array_unique (…) in de officiële PHP-documentatie vind je veel belangrijke en efficiënte functies.
Wat betreft het soort, tenzij je het nodig hebt, is het niet nodig ... Uitvoeringstijd en geheugen zijn verspild. (voor wat er in de post wordt gedaan)
Groeten!
Wauw !! een woordenboek om als brute kracht te gebruiken !! XD
Zeer goed de combinatie van soort met uniq! Het heeft me veel geholpen om dubbele regels te verwijderen.
bedankt
Carlos 'opmerking is, ondanks zijn arrogantie, niet geldig. Hij zegt te gebruiken:
kat pass.txt | uniq> pass-ready.txt
Voorwaarde voor uniq is echter dat het bestand is geordend. Je had er wat meer over moeten nadenken of jezelf eerder moeten informeren.
Heel goed, je hebt me veel tijd bespaard met het runnen van mijn bash
awk '! array_temp [$ 0] ++' pass.txt> pass-ready.txt
hiermee worden de lijnen geëlimineerd zonder te bestellen.
Heel erg bedankt voor de input!
Hoewel het cool zou zijn om het uniek te kunnen maken zonder de volgorde te veranderen, maar ach, een gemakkelijke en nuttige opdracht!
Bedankt, het heeft me veel geholpen 😉
ik heb dit
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
Hoe zorg ik ervoor dat het alleen duplicaten per abonnee in een bestand schildert en de niet-duplicaten in een ander bestand laat?
de abonnee staat in pos 23 (10 posities)
sort -u -k 1,1 File.txt> resultaat.txt
Dit sorteert het bestand op het eerste veld
2020 en nog steeds serveren, heel erg bedankt!
Bn co thểhẫng dẫn cách loỏi bỏcác dòng trặng lặp của nhi fileu bestandstekst trong Linux of Windows c không? Cng như trường hợp của bạn, khi tôi tạo file naar đ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òp trng l. 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 2 only bốgi dng 1 .
Như bạn biết con 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 to điển rất ư là nhiều ký, ch ng hạn nhng. Dit is meer dan het is dat het niet in Windows is, in plaats van op een andere manier, omdat het in Windows verandert. Hy vọng nhận được phản hồi to bạn!