Jak szybko usunąć duplikaty linii?
Ja bym to wrzucił na chwilę na jakiegoś *nix, ew. cygwinem coś na zasadzie: cat plik.txt | sort | uniq >> wyjscie.txt
Usunięte, odpowiedź na błedny temat…
Ja mogę podać przepis na sernik… Ten cytat to z czego? Już dałem odpowiedź. Możesz też użyć świetnego notepad++, obsługuje wyrażenia regularne.Tak na szybko (nie testowałem): ^(.*?)$\s+?^(?=.*^\1$)
Jak nadal nie to, co szukasz - zawsze możesz probować zaimportować do Excela, posortować i użyć funkcji usunięcia duplikatów.
Post 4.
A ten temat już rozwiązany?
bachus - Tamta odpowiedź miała się tyczyć tego tematu związanegoz artefaktami graficznymi.
Prawdopodobnie związane z nadmiernym wykorzystaniem pamięci RAM (systemowej lub pamięci VIDEO karty graficznej) przez program
http://forum.dobreprogramy.pl/rozmazywanie-aktywnych-okien-programów-t493103/
A jeśli chodzi o Twój przepis to zaraz sprawdzę czy da się z nigo coś pysznego upiec…
Zacznij od notepad++ jakby co pytaj.
W Notepad++ działa dobrze ale jak już mówiłem Notepad++ ma limit linii i nie otworzy pliku.
EmEditor otwiera ale mam problem z Regex: Trzeba coś zmienić w regex:
Jak używać regex:
A powershell? Mam Ci coś klepnac na szybko? Sprawdziłem, działa:
Get-Content .\do_usuwania_duplikatow.txt | Select-Object -Unique >> wynik.txt
Możesz z ciekawości pokazać, ile to zajmie:
Measure-Command { Get-Content .\do_usuwania_duplikatow.txt | Select-Object -Unique >> wynik.txt}
Jeśli możesz i masz chwile czasu…
Sprawdzone, działa (edytowałem poprzedni post).
drobok - sprawdziłem działa i usuneło baaaardzo szybko.
Musisz mieć znaczniki początku i końca linii bo inaczej mógłby ci sparsować część linii.we
Używasz regexp by nie robić czegoś X razy
cyferke masz ok (nie licząc braku znacznika początku linii)
^-?\d+$
Daj znać czy ci notepad++ ogarnia ten plik. Ew Weź wrzuć w pętlę przepisywanie między plikami z tym wyrażeniem i będzie ok.
drobok - doskonale działa regularne wyrażenie plik po usunieciu dupliaktów ma mniej linii teraz (300 k linii i około 10 MB tekstowy plik) więc teraz jest wszystko dobrze. I mam już gotową listę.