Hexadezimaler Diff-Viewer für Linux

Ich suche einen guten Hexadezimal-Viewer für Linux.

Es sollte eine GUI haben und intuitiv zu bedienen sein.

Es sollte auch in der Lage sein, zwei Dateien zu vergleichen und vielleicht sogar einen Unterschied anzuzeigen.

Antworten (3)

Hex-Diff-Viewer mit Konsolen-/Terminalgrafiken:

  • vbindiff, Teilt den Bildschirm in oben und unten, keine Rechts-/Linksansicht, Ausgabe mit fester Breite.
  • hexdiff, Gleiches Aussehen von oben/unten wie vbindiff, Ausgabe mit fester Breite, und es kann ein Hex- Editor sein .
  • dhexTop/Bottom-Diff-Viewer, Hex-Editor, Ausgabe mit veränderbarer Breite (passt zum Terminal) und bietet eine bessere Navigation.

Grafische Hex-Diff-Viewer: Ich kenne keinen, aber hier ist eine Shell-Funktion mgdiff, die , ( mit linker/rechter Ansicht) und hexdump(AKA hd) ineffizient verwendet:

mgdiffhex () 
{ 
    a="/tmp/$(basename "$1")$$.hex"
    b="/tmp/$(basename "$2")$$.hex"
    hd "$1" > "$a"
    hd "$2" > "$b"
    mgdiff "$a" "$b"
    rm     "$a" "$b"
}

Dann renne:

mgdiffhex foo bar

Hinweise: Das hexdumputil kann mit Formatierungsoptionen aufgerufen werden, die beliebige Terminalbreiten zulassen; mgdiffhexkann in der Größe geändert werden, es fehlt jedoch jede Möglichkeit, die Hex-Dumps innerhalb des in der Größe geänderten Fensters neu zu formatieren. Wenn Sie sie kombinieren, erhalten Sie einen groben grafischen Hex-Diff-Viewer.

Die Antwort ist wxHexEditor in Ubuntu-Repos.

https://github.com/EUA/wxHexEditor

Könnten Sie bitte einen Screenshot hinzufügen, der die Diff-Funktion zeigt? Vielen Dank!

Aus irgendeinem Grund ist ein GUI-Tool, das Binärdateien unterscheidet, schwer zu finden. Ich habe ein paar Optionen gefunden, aber ehrlich gesagt können die von agc vorgeschlagenen CLI-Optionen am Ende zu einer besseren Benutzererfahrung führen.

wxHexEditor

  • Dies ist möglicherweise die beste Option, obwohl es bizarre Standardeinstellungen gibt, die die Verwendung erschweren (siehe unten für Problemumgehungen):
    • Unlesbares Standard-Farbschema (wahrscheinlich wegen der Standard-Gnome-Palette von Ubuntu)
    • Standardmäßig Basis-10-Adressen (kann in der Offset -Spalte durch Rechtsklick geändert werden; ich sehe keine Möglichkeit, dies in den Vergleichsergebnissen zu ändern )
    • Bei einem Diff von 2 Dateien wird standardmäßig nur eine Datei gescrollt
    • Bytes pro Zeile basieren auf der Bildschirmbreite
  • So vergleichen Sie Dateien:
    1. Extras > Dateien vergleichen
    2. Stellen Sie sicher, dass Sie Dateien zum Scrollen verbinden aktivieren , da sonst jede Datei separat scrollt
  • Usability-Optimierungen
    1. Klicken Sie mit der rechten Maustaste auf die Spalte Offset , um zu Hex-Werten zu wechseln
    2. Optionen > Einstellungen > Limit Bytes pro Zeile aktivieren (ansonsten basiert Bytes pro Zeile auf der Bildschirmbreite)
    3. Optionen > Einstellungen > Hex-Farben nach Bedarf ändern (ich habe die letzte in schwarz geändert, um sie lesbar zu machen)

HxT

  • Dies ist ein Windows-Tool, funktioniert aber in Wine einwandfrei
  • Dies war viel weniger nützlich als wxHexEditor:
    • Unterschiede zwischen Dateien werden nicht hervorgehoben
    • Behandelt Unterschiede Byte für Byte
    • Erkennt Unterschiede unter dem Cursor für jede Datei, d. h. wenn Sie mit dem Cursor an eine andere Stelle klicken, wird eine andere Stelle in jeder Datei verglichen
  • So vergleichen Sie Dateien:
    1. Analyse > Datenvergleich > Vergleichen
    2. Analyse > Datenvergleich > Nächster Unterschied

ImHex

  • Irgendwie war dieser hier noch schlimmer als HxD:

    • Es scheint keine andere Möglichkeit zu geben, als zu scrollen, um zum nächsten Unterschied zu gelangen
    • Der Dateninspektor funktioniert nicht beim Vergleichen von Dateien

    Es hebt zumindest große Abschnitte von Änderungen hervor (statt nur Byte für Byte) wie HxD. Aber insgesamt bietet wxHexEditor nichts.

  • So vergleichen Sie Dateien:

    1. Ansicht > Vergleich

Ghidra

  • Ghidra ist etwas anders, da es eher ein Reverse-Engineering-Tool als ein Hex-Editor ist und nur ein Byte pro Zeile anzeigt, weshalb ich es an letzter Stelle setze.
  • So vergleichen Sie Dateien:
    1. Erstellen Sie ein neues Projekt
    2. Importieren Sie Dateien in das Projekt
    3. Doppelklicken Sie auf die Datei, um sie in CodeBrowser zu öffnen
    4. Überspringen Sie die Analyse, wenn Sie dazu aufgefordert werden
    5. Extras > Programmunterschiede
    6. Do Differences On > Deaktivieren Sie alles außer Bytes
    7. Sie können auch zu Window > Bytes gehen , um eine typischere Hex-Editor-Ansicht zu sehen, aber es wird jeweils nur eine Datei angezeigt