Ich habe eine große Datei, in der jede Zeile eine Teilzeichenfolge wie ABC123 enthält. Wenn ichbasic grep
grep ABC file.txt
oder
grep ABC1 file.txt
ausführen bekomme ich diese Zeilen zurück, wie erwartet, aber wenn ich
grep ABC12 file.txt
ausführen nicht grep die entsprechenden Zeilen zu finden.
Das scheint ziemlich triviale Funktionalität, aber ich bin kein starker Benutzer von grep so vielleicht fehlt mir etwas Gotcha.
Also, lassen Sie mich mein Verständnis überprüfen. In der Datei, die ABC123 enthält, befinden sich mehrere Zeilen. Wenn Sie Grep mit ABC oder ABC1 ausführen, erhalten Sie diese Zeilen zurück; Wenn Sie Grep ABC12 ausführen, erhalten Sie diese Zeilen nicht zurück? Das ist ziemlich unwahrscheinlich - grep funktioniert mit langen regulären Ausdrücken und 5 oder 6 Zeichen sind nicht lang. Angenommen, Pilotfehler. Welche Plattform? Welche Version von Grep? (Sie haben recht; was Sie tun, ist trivial. Mein Verdacht müsste sein, dass die Datei nicht das enthält, was Sie denken.) –
Bitte senden Sie einige Beispieldaten und Befehl ** kopiert und eingefügt ** aus den tatsächlichen Dateien und Befehle, die Sie verwenden, um das Problem zu reproduzieren. –
Die Datei enthielt tatsächlich ein nicht druckbares Zeichen zwischen den 2 und 3 Zeichen, die sonst nicht angezeigt wurden. Im Nachhinein hätte dies die offensichtliche Erklärung sein müssen. Der od-Dienst erwies sich als sehr hilfreich. – user14128