Wygenerowałem wordlist.txt
11 GB przez crunch-3.6
. Kiedy próbuję otworzyć plik za pomocą Vi lub gedit, mam problemy z powodu rozmiaru pliku. Jak mogę wyświetlić ten plik?
Wygenerowałem wordlist.txt
11 GB przez crunch-3.6
. Kiedy próbuję otworzyć plik za pomocą Vi lub gedit, mam problemy z powodu rozmiaru pliku. Jak mogę wyświetlić ten plik?
Odpowiedzi:
Nie używaj edytora tekstu do przeglądania tekstu.
Istnieją lepsze narzędzia:
Przeglądaj pliki za pomocą less
(Przewijaj spacją, End, Home, PageUp, PageDown; Szukaj za pomocą „/ coś”; Wyjdź za pomocą q).
Z less
instrukcji:
Less nie musi czytać całego pliku wejściowego przed uruchomieniem, więc przy dużych plikach wejściowych uruchamia się szybciej niż edytory tekstu, takie jak vi (1).
Stosowanie:
less wordlist.txt
Rozważ użycie less -n
:
-n lub --line-numbers:
Pomija numery linii. Domyślne (użycie numerów linii) może powodować, że less działa w niektórych przypadkach wolniej, szczególnie przy bardzo dużym pliku wejściowym. Pomijanie numerów linii z
-n
opcją pozwoli uniknąć tego problemu.
(dzięki za sugestię opcji -n @pipe)
Użyj, grep
aby uzyskać tylko te linie, które Cię interesują:
# Show all Lines beginning with A:
grep "^A:" wordlist.txt
# Show all Lines ending with x and use less for better viewing
grep "x$" wordlist.txt | less
Użyj head
lub, tail
aby uzyskać pierwszą lub ostatnią n linii
head wordlist.txt
tail -n 200 wordlist.txt
Aby edytować tekst, zapoznaj się z tym pytaniem .
more
załaduje cały plik do pamięci, w przeciwieństwie do less
. Jeśli jest tak duży, odradzałbym go używać. Najlepszą opcją byłoby zdecydowanie użycie grep
.
more
i less
kodu źródłowego, i oba wydają się skorzystać z jednej open
lub fopen
, co nie zmienia niczego w odniesieniu do sposobu plik zostanie załadowany, o ile wiem
more
jest bardzo przestarzałym narzędziem, jeśli less
jest dostępne, nie myślę o żadnym celu, dla którego chcesz go użyć more
.
more
ma jedną ogromną przewagę nad less
: nie obsługuje LESSOPEN
preprocesora wejściowego. Jeśli próbujesz wyświetlić nieprzetworzony tekst strony podręcznika lub czegoś takiego, pisanie jest znacznie szybsze more my_docs.man
niż przeglądanie less
dokumentacji, aby dowiedzieć się, jak wyłączyć preprocesor.
less -nS
przypadku dużych plików, aby trochę przyspieszyć.
Często wystarczy „grep”, aby znaleźć to, czego potrzebujesz.
Jeśli potrzebujesz więcej „kontekstu” wokół określonej linii, użyj „grep -n”, aby znaleźć numery linii interesujących linii, a następnie użyj sed, aby wydrukować „fragment” pliku wokół tej linii:
$ grep -n 'word' file
123:A line with with word in it
$ sed -n '120,125p' file
A line
Another line
The line before
A line with with word in it
The line after
Something else
grep -B
i -A
drukować linie B efore i A fter ...
-C
o C przystojniak (zarówno przed, jak i po nim).