Kann ich festlegen xxd
, dass keine Zeilenumbrüche in der Ausgabe gedruckt werden sollen und mein Dump als eine fortlaufende Zeile angezeigt wird?
[user@localhost] : ~ $ echo -n "this is a long line and xxd is going to take multiple lines to print it" | xxd -p
746869732069732061206c6f6e67206c696e6520616e6420787864206973
20676f696e6720746f2074616b65206d756c7469706c65206c696e657320
746f207072696e74206974
tr
die Zeilenumbrüche löschen, z. B.... | xxd -p | tr -d \\n
xxd
ist, dass es Whitespace für die Umkehrung-r
seines Postkripts / Plain-p
Dump (oder eines beliebigen Plain Hexdump für diese Angelegenheit) ignoriert . z.B. Die folgende Zeile wird umbrochen\n
, aber die umgekehrte Ausgabe ist genau das, was eingegeben wurde:echo {1..14} | xxd -p | xxd -p -r
Erzeugt die Ausgabe:1 2 3 4 5 6 7 8 9 10 11 12 13 14\n
- Die\n
stammt vonecho
hexdump -v -e '/1 "%02X"'
anstelle von verwendenxxd
.Antworten:
Was Sie brauchen, ist die Option -c.
Hier einige Informationen aus der Dokumentation :
Die Dokumentation besagt, dass der Maximalwert für den Parameter "c" 256 ist, aber ich habe größere Werte ausprobiert und es hat funktioniert. Hör zu:
Hier lösche ich eine Million Bytes aus / dev / random und erhalte eine Zeichenfolge von 2 Millionen + 1 Zeichen. Jedes Byte aus / dev / random wird durch 2 Zeichen dargestellt und zusätzliches Byte ist die letzte neue Zeile.
quelle