Ich meine 100+ MB groß; solche Textdateien können den Rahmen der Editoren sprengen.
Ich muss eine große XML-Datei durchsehen, kann das aber nicht, wenn der Editor fehlerhaft ist.
Irgendwelche Vorschläge?
VS Code (Windows, macOS, Linux) - Frei und Open Source mit einer schönen GUI. Bearbeitet eine 3,6 GB große JSON-Datei, die in einer Minute geladen ist. Sie müssen genug RAM haben, um die Dateien zu laden.
Kostenlose Nur-Lese-Viewer:
tail
." Unterstützt Dateiverfolgung, Suche, Filterung, konfigurierbare Hervorhebung, Plugins und externe Tools.Freie Editoren:
Eingebaute Programme (keine Installation erforderlich):
MORE
, nicht auf das Unix more
. Ein Konsolenprogramm, mit dem Sie sich eine Datei bildschirmweise ansehen können.Web-Betrachter:
Kostenpflichtige Editoren:
Und schließlich, haben Sie versucht, die große Datei mit Ihrem normalen Editor zu öffnen? Einige Editoren können tatsächlich mit recht großen Dateien umgehen. Insbesondere Notepad++ (Windows) und Sublime Text (Windows, macOS, Linux) unterstützen Dateien im Bereich von 2 GB.
Warum benutzen Sie Editoren, um eine (große) Datei nur anzusehen?
Unter *nix oder Cygwin benutzen Sie einfach less. (Es gibt ein berühmtes Sprichwort - "weniger ist mehr, mehr oder weniger" - weil "less" den früheren Unix-Befehl "more" ersetzte, mit dem Zusatz, dass man wieder nach oben scrollen konnte.) Das Suchen und Navigieren unter less ist dem von Vim sehr ähnlich, aber es gibt keine Auslagerungsdatei und es wird nur wenig RAM verwendet.
Es gibt eine Win32-Portierung von GNU less. Siehe den Abschnitt "less" in der obigen Antwort.
Perl ist gut für schnelle Skripte, und sein ..
(Range Flip-Flop) Operator ist ein netter Selektionsmechanismus, um den Schrott, durch den man sich durchwühlen muss, zu begrenzen.
Zum Beispiel:
$ perl -n -e 'print if ( 1000000 .. 2000000)' humongo.txt | less
Dies extrahiert alles von Zeile 1 Mio. bis Zeile 2 Mio. und ermöglicht es Ihnen, die Ausgabe manuell in weniger zu durchsuchen.
Ein anderes Beispiel:
$ perl -n -e 'print if ( /regex one/ .. /regex two/)' humongo.txt | less
Der Druck beginnt, wenn der "reguläre Ausdruck eins" etwas findet, und hört auf, wenn der "reguläre Ausdruck zwei" das Ende eines interessanten Blocks findet. Es können mehrere Blöcke gefunden werden. Sichten Sie die Ausgabe...
Dies ist ein weiteres nützliches Werkzeug, das Sie verwenden können. Um den Wikipedia-Artikel zu zitieren:
logparser ist ein flexibles Befehlszeilenprogramm, das ursprünglich von Gabriele Giuseppini, einem Microsoft-Mitarbeiter, geschrieben wurde, um Tests für die IIS-Protokollierung zu automatisieren. Es war für die Verwendung mit dem Windows-Betriebssystem gedacht und war in den IIS 6.0 Resource Kit Tools enthalten. Das Standardverhalten von logparser funktioniert wie eine Datenverarbeitungspipeline, indem es einen SQL-Ausdruck auf der Befehlszeile entgegennimmt und die Zeilen ausgibt, die Übereinstimmungen mit dem SQL-Ausdruck enthalten.
Microsoft beschreibt Logparser als ein leistungsfähiges, vielseitiges Tool, das einen universellen Abfragezugriff auf textbasierte Daten wie Protokolldateien, XML-Dateien und CSV-Dateien sowie auf wichtige Datenquellen des Windows-Betriebssystems wie das Ereignisprotokoll, die Registrierung, das Dateisystem und Active Directory bietet. Die Ergebnisse der Eingabeabfrage können in der textbasierten Ausgabe benutzerdefiniert formatiert werden, oder sie können in spezielleren Zielen wie SQL, SYSLOG oder einem Diagramm persistiert werden.
Beispiel für die Verwendung:
C:\>logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line > 1000 and line < 2000"
C:\>logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line like '%pattern%'"
100 MB sind nicht zu groß. 3 GB sind schon ziemlich groß. Ich habe früher in einem Druck- und Versandzentrum gearbeitet, das etwa 2 % der US-Postsendungen erster Klasse erstellte. Eines der Systeme, für das ich die technische Leitung hatte, machte etwa 15+% der Poststücke aus. Wir hatten hier und da einige große Dateien zu debuggen.
Sie können hier gerne weitere Tools und Informationen hinzufügen. Diese Antwort ist nicht umsonst ein Community-Wiki! Wir alle brauchen mehr Ratschläge für den Umgang mit großen Datenmengen...