linux-l: Hexeditor...

Steffen Solyga solyga at beast.absinth.net
Do Okt 28 19:51:58 CEST 1999


Carsten Wartmann <cw at imago-viva.de> wrote:

> können so sed etc. auch Binärdateien editieren?
> Ich suche einen Hexeditor (Robin: nein hexl-mode nicht).

Meiner Meinung nach kann sed keine Binärdateien editieren, habe eine ganze
Weile danach gesucht.
Ich nehme an, daß Du mit pipes oder/und shell-scripts arbeiten willst
(sonst kannst Du ja einen interaktiven Editor benutzen -- emacs??).
Zu diesem Zwecke habe ich einen binär <--> ascii Konvertierer geschrieben,
findest Du unter http://www-tet.ee.TU-Berlin.DE/solyga/linux .
Das Paket hxd enthält einen Vorwärts- (hxd) und einen Rückwärtskonvertierer
(unhxd). Kurzbeschreibung:

bash$ hxd filename | unhxd | cmp filename && echo Geht
Geht
bash$ hxd unix_text | sed "s|0a|0d 0a|g" | unhxd > dos_text
bash$ hxd dos_text | sed "s|0d||g" | unhxd | cmp unix_text && echo Jawoll
Jawoll
bash$

Problematisch ist es nur, wenn Du Gruppen editieren willst, weil der Zeilen-
umbruch eventuell das Muster zerstört. Dafür gibt es wohl keine saubere Lösung
(abgesehen vom Selbstschreiben eines binären Streameditors). Zwar könnte man
hxd beibringen, pro file nur genau einen Zeilenumbruch zu schreiben, aber
damit ist das Problem nur auf sed verlagert. Der arbeitet nämlich - soweit
es mir bekannt ist - zeilenorientiert und vereitelt damit das Editieren
riesiger files.

Viel Erfolg,
Steffen.

-- 
-------------------------------------------
Steffen Solyga
mail: solyga at absinth.net
www : http://www-tet.ee.TU-Berlin.DE/solyga
-------------------------------------------



Mehr Informationen über die Mailingliste linux-l