Pouvez-vous recommander un éditeur hexadécimal pouvant être exécuté depuis un shell? Je dois pouvoir éditer non seulement voir le contenu.
emacs
a un mode hexl pour l'édition hexadécimale.
xxd
Cet outil est le plus couramment disponible que j'ai trouvé pour ce type de tâche (disponible par défaut pour les dernières Ubuntu et macOS). Vous pouvez supprimer la partie lisible en ASCII sur la droite si nécessaire à l'aide de -p
et vous pouvez rétablir (modifier l'entrée ascii en données binaires) à l'aide de la fonction -r
. Voici quelques exemples d'utilisations simples:
Conversion en hex avec vue ascii:
echo example | xxd
Conversion en hexdump (pas de vue ascii à droite):
echo example | xxd -p
Reconvertir d'un fichier hexadécimal en données binaires:
echo 746573740a | xxd -p -r
Cela peut devenir beaucoup plus complexe avec cela dans les scripts Shell. En fait, j’ai utilisé cela et "dd" pour rechercher des séquences spécifiques et les modifier de manière prédéfinie, le tout à partir d’un script Shell n’utilisant que bash, dd
et xxd
. Vous n'avez en fait pas besoin de dd pour cela, car vous pouvez "rechercher" un emplacement spécifique et écrire à cet emplacement la séquence d'octets dont vous avez besoin. Le principal avantage de cette approche est sa facilité de script.
Il y a aussi DHEX
apt-cache show dhex
éditeur hex basé sur ncurses avec mode diff
C’est plus qu’un autre éditeur hexadécimal: il comprend un mode diff, qui permet de comparer facilement et commodément deux fichiers binaires. Comme il est basé sur ncurses et qu'il est possible de les utiliser, il peut être exécuté sur un nombre quelconque de systèmes et de scénarios. Grâce à son utilisation des journaux de recherche, il est possible de suivre facilement les modifications apportées à différentes itérations de fichiers.
Si vous n'êtes pas familier avec vim ou emacs, celui-ci ne semble pas avoir beaucoup de courbe d'apprentissage.
Vous pourrez peut-être aussi utiliser vi/vim comme éditeur hexadécimal (il peut appeler xxd).
Entrer en mode hexadécimal:
:%!xxd
Quitter le mode hexadécimal:
:%!xxd -r
Je sais que c’est une vieille question, mais j’étais insatisfait de toutes les réponses fournies. Je recherchais un éditeur hexadécimal qui me permettrait de créer mes propres fichiers binaires (mode insertion) et pouvant gérer des fichiers très volumineux.
Je suis tombé sur Tweak , qui remplit ces deux conditions, ainsi que les PO.
- Tweak prend en charge le mode insertion (ce qui n'est pas particulièrement utile si vous modifiez un fichier exécutable ou une image de système de fichiers, mais il peut s'avérer extrêmement pratique dans d'autres formats de fichier tels que PNG).
- Couper, copier et coller dans le fichier que vous éditez est extrêmement efficace. Quelle que soit la taille de la masse de données que vous déplacez, même s'il s'agit d'une section de 200 Mo d'une image de CD, Tweak effectuera toujours l'opération de manière efficace et instantanée.
- Tweak prend en charge le chargement paresseux du fichier d'entrée: au lieu de tout enregistrer immédiatement en mémoire, il se souvient simplement des parties du tampon d'édition qui sont des copies des parties du fichier d'entrée et qui font référence au fichier sur le disque quand il le faut. Tweak doit seulement prendre beaucoup de temps lorsque vous en avez réellement besoin pour lire le fichier en entier. Les deux seules opérations associées à cette propriété sont la recherche et l'enregistrement de la version modifiée du fichier sur le disque. Tout le reste est instantané.
Bless Hex Editor est un éditeur binaire (hex) qui fournit actuellement les fonctionnalités suivantes:
Vous pouvez le télécharger à partir d’ici: http://packages.debian.org/sid/all/bless/download .
Pour l'installer, voir Comment installer un fichier .deb via la ligne de commande?
Besoin de plus?
Celui-ci est simple à utiliser:
Sudo apt-get install hexcurse
Essayez hexed , il est conçu pour être utilisé dans les scripts et créer des fichiers.
Il y a aussi ht
. Installez-le en tant que
Sudo apt-get install ht
puis exécutez-le en tapant hte
.
Je n'ai pas essayé avec de très gros fichiers/partitions, cependant.