Ich habe den 'read -n6'-Stream jetzt mal 'hd' statt 'od' zu fressen gegeben,
das 'tr | cut' weggelassen und sed-Magie
(am besten zu sehen mit monospace-Font)
Code: Alles auswählen
00000000 4d 43 ba 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 bb 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 bc 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 bd 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 be 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 bf 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 c0 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 c1 3c 1b 5b 0a |MC.<.[.| 00000007
00000000 4d 43 c2 3c 1b 5b 4d 0a |MC.<.[M.| 00000008
00000000 43 c3 3c 1b 5b 4d 43 0a |C.<.[MC.| 00000008
00000000 c4 3c 1b 5b 4d 43 c5 3c 0a |.<.[MC.<.| 00000009
00000000 1b 5b 4d 43 c6 3c 1b 0a |.[MC.<..| 00000008
00000000 5b 4d 43 c7 3c 1b 5b 0a |[MC.<.[.| 00000008
00000000 4d 43 c8 3c 1b 5b 4d 0a |MC.<.[M.| 00000008
00000000 43 c9 3c 1b 5b 4d 43 0a |C.<.[MC.| 00000008
00000000 ca 3c 1b 5b 4d 43 cb 3c 0a |.<.[MC.<.| 00000009
00000000 1b 5b 4d 43 cc 3c 1b 0a |.[MC.<..| 00000008
00000000 5b 4d 43 cd 3c 1b 5b 0a |[MC.<.[.| 00000008
00000000 4d 43 ce 3c 1b 5b 4d 0a |MC.<.[M.| 00000008
00000000 43 cf 3c 1b 5b 4d 43 0a |C.<.[MC.| 00000008
00000000 d0 3c 1b 5b 4d 43 d1 3c 0a |.<.[MC.<.| 00000009
00000000 1b 5b 4d 43 d2 3c 1b 0a |.[MC.<..| 00000008
00000000 5b 4d 43 d2 3b 1b 5b 0a |[MC.;.[.| 00000008
00000000 4d 43 d3 3b 1b 5b 4d 0a |MC.;.[M.| 00000008
die Maus dabei in einem übergroßen xterm-Fenster immer weiter möglichst nur nach rechts bewegt.
Dabei zu sehen, daß der "Haltepunkt" '4d 43' durch das Muster wandert,
da kommt das zusätzliche Byte, resp. zwei Byte.
Das 'read -n6' ist zu statisch, in Folge formatiert es den Stream wohl auch zu unpassenden Zeilen, besser: "Leseabschnitten".
Wie könnte der Stream passend vorformatiert werden?
Sodaß an der richtigen Stelle eine Unterbrechung gemacht werden könnte,
um dann die richtigen Ergänzungen einfügen und Bytes addieren zu können.
Ich habe versucht derart
Code: Alles auswählen
$ hd | while read .....
$ cat | hd | while read ....
usw.
dann kommt aber wieder das unbehandelte auf den Bildschirm.
'xev' scheint das ja richtig zu machen.