Ich habe einige Datenbank-Dumps von einem Windows-System auf meiner Box. Es sind Textdateien. Ich verwende Cygwin, um sie zu durchsuchen. Diese scheinen einfache Textdateien zu sein; Ich öffne sie mit Texteditoren wie Notepad und Wordpad und sie sehen lesbar aus. Wenn ich jedoch grep auf ihnen ausführe, wird es sagen binary file foo.txt matches
.
Mir ist aufgefallen, dass die Dateien ASCII NUL
enthalten Zeichen, von denen ich glaube, dass sie Artefakte aus dem Datenbank-Dump sind.
Was bringt grep also dazu, diese Dateien als binär zu betrachten? Die NUL
Charakter? Gibt es ein Flag im Dateisystem? Was muss ich ändern, damit grep mir die Zeilenübereinstimmungen anzeigt?
Akzeptierte Antwort:
Wenn ein NUL
vorhanden ist Zeichen irgendwo in der Datei, wird grep es als Binärdatei betrachten.
Es könnte eine Problemumgehung wie diese cat-Datei | geben tr -d '