Jak wyświetlić ogromny plik tekstowy przez Vi lub gedit

19

Wygenerowałem wordlist.txt z 11 GB na 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?

    
zadawane vais sai 09.11.2017, 09:53
źródło

2 odpowiedzi

39

Nie używaj edytora tekstu do przeglądania tekstu .

Są lepsze narzędzia:

Przeglądaj pliki z less (Przewiń za pomocą Spacji, Koniec, Strona główna, PageUp, PageDown; Wyszukaj za pomocą "/ coś"; Wyjdź z q).

Od less manual:

  

Mniej nie trzeba czytać całego pliku wejściowego przed rozpoczęciem, więc przy dużych plikach wejściowych uruchamia się szybciej niż edytory tekstowe takie jak vi (1).

Wykorzystanie:

less wordlist.txt

Rozważ użycie less -n :

  

-n lub --line-numbers:

     

Pomija numery linii. Wartość domyślna (w celu użycia numerów linii) może w niektórych przypadkach powodować wolniejszą pracę, szczególnie przy bardzo dużym pliku wejściowym. Pomijanie numerów linii za pomocą opcji -n pozwoli uniknąć tego problemu.

(dzięki za sugestię -n opcji @pipe)

Użyj grep , aby uzyskać tylko linie, którymi jesteś zainteresowany:

# 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ć pierwsze lub ostatnie n wierszy

head wordlist.txt
tail -n 200 wordlist.txt

Aby edytować tekst, zapoznaj się z this pytanie .

    
odpowiedział RoVo 09.11.2017, 09:57
źródło
7

Często wystarczy "grep", aby znaleźć to, czego potrzebujesz.

Jeśli potrzebujesz więcej "kontekstu" wokół konkretnej linii, użyj "grep -n", aby znaleźć numery wierszy interesujących linii, a następnie użyj sed do wypisania "kawałka" pliku wokół tego wiersza:

$ 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
    
odpowiedział Phill W. 09.11.2017, 13:00
źródło

Przeczytaj inne pytania na temat tagów