Ich habe eine wordlist.txt
von 11 GB durch generiert crunch-3.6
. Wenn ich versuche, die Datei mit Vi oder gedit zu öffnen, treten aufgrund der Dateigröße Probleme auf. Wie kann ich diese Datei anzeigen?
Ich habe eine wordlist.txt
von 11 GB durch generiert crunch-3.6
. Wenn ich versuche, die Datei mit Vi oder gedit zu öffnen, treten aufgrund der Dateigröße Probleme auf. Wie kann ich diese Datei anzeigen?
Antworten:
Verwenden Sie keinen Text verwenden Editor für Betrachtungs Text.
Es gibt bessere Werkzeuge:
less
Anzeigen von Dateien mit (Blättern mit Leertaste, Ende, Start, Bild-Auf, Bild-Ab; Suchen mit "/ something"; Verlassen mit q).
Aus dem less
Handbuch:
Less muss vor dem Start nicht die gesamte Eingabedatei lesen, daher startet es bei großen Eingabedateien schneller als Texteditoren wie vi (1).
Verwendung:
less wordlist.txt
Betrachten Sie die Verwendung von less -n
:
-n oder --Zeilennummern:
Unterdrückt Zeilennummern. Die Standardeinstellung (Verwendung von Zeilennummern) kann in einigen Fällen dazu führen, dass weniger langsamer ausgeführt wird, insbesondere bei einer sehr großen Eingabedatei. Das Unterdrücken von Zeilennummern mit der
-n
Option vermeidet dieses Problem.
(Danke, dass du -n option @pipe vorgeschlagen hast)
Verwenden grep
Sie diese Option , um nur die Zeilen abzurufen, an denen Sie interessiert sind:
# 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
Verwenden Sie head
oder tail
, um die ersten oder letzten n Zeilen abzurufen
head wordlist.txt
tail -n 200 wordlist.txt
Informationen zum Bearbeiten von Text finden Sie in dieser Frage .
more
im Gegensatz dazu die gesamte Datei in den Speicher geladen wird less
. Wenn es so groß ist, würde ich davon abraten, es zu verwenden. Die beste Option wäre auf jeden Fall zu verwenden grep
.
more
und den less
Quellcode zu überprüfen , und beide scheinen entweder open
oder zu verwenden fopen
, was
more
ist ein sehr veraltetes Dienstprogramm, wenn less
es verfügbar ist, denke ich nicht, warum Sie es verwenden würden more
.
more
hat einen großen Vorteil gegenüber less
: Es unterstützt den LESSOPEN
Eingabe-Präprozessor nicht. Wenn Sie versuchen, den Rohtext einer Manpage oder etwas anderem anzuzeigen, ist es viel schneller, more my_docs.man
als die less
Dokumentation zu durchsuchen, um herauszufinden, wie der Präprozessor unterdrückt werden kann.
less -nS
für große Dateien aufzurufen , um die Dinge ein wenig zu beschleunigen.
Oft reicht "grep" aus, um das zu finden, was Sie brauchen.
Wenn Sie mehr "Kontext" für eine bestimmte Zeile benötigen, verwenden Sie "grep -n", um die Zeilennummern der interessierenden Zeilen zu ermitteln, und "sed", um einen Teil der Datei um diese Zeile herum auszudrucken :
$ 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
und verwenden -A
, um die Zeilen B vor und A nach ... zu drucken
-C
für ein C- Stück (vor und nach).