Ist es möglich, einer Binärdatei von Anfang an zu folgen, a la tail -f
?
Dies ist in einigen Fällen nützlich, z. B. wenn ich scp
eine Datei an einen Remote-Server weitergebe und sie gleichzeitig einem anderen Prozess zuführen möchte (ja, ich weiß, dass ich ssh
+ cat
Tricks verwenden kann).
Soweit ich aus dem FM lese, tail
ist geschrieben mit Textdateien im Auge.
Gibt es eine einfache Möglichkeit, solche Operationen mit Standard-Posix-Tools durchzuführen?
text-processing
tail
binary
Marcus
quelle
quelle
tail
nur mit Textdateien verwendet werden kann?tail
Binärdateien nicht immer verarbeitet: Sie können Nullbytes ersticken oder Streubytes nach dem letzten Zeilenumbruch in den Eingabedateien weglassen. Moderne Systeme kommen zurecht.Antworten:
tail
funktioniert mit binären Daten genauso gut wie mit Text. Wenn Sie ganz am Anfang der Datei beginnen möchten, können Sie verwendentail -c +1 -f
.quelle
cat bin_file | strings - -o | grep match_string
, aber wenn ich dies tuetail -c +1 -f bin_file | strings - -o | grep match_string
, erhalte ich nach der 9. Übereinstimmung nichts mehr. Ich habe auch festgestellt, dass die Zeilennummern von-o
im Vergleich zur Katzenausgabe alle 1 weniger sind. Wenn ich den Grep weglasse, bekomme ich alle 16 Übereinstimmungen (gemischt mit allem anderen), also dachte ich, das Problem sei Grep, aber ich habe einen Perl-