GNU/Linux >> Tutoriels Linux >  >> Linux

Convertir des données binaires en hexadécimal dans un script shell

Avec od (systèmes GNU) :

$ echo abc | od -A n -v -t x1 | tr -d ' \n'
6162630a

Avec vidage hexadécimal (systèmes BSD) :

$ echo abc | hexdump -ve '/1 "%02x"'
6162630a

Depuis Hex dump, od et hexdump :

"Selon le type de votre système, l'un ou l'autre de ces deux utilitaires ou les deux seront disponibles :les systèmes BSD déconseillent od pour le vidage hexadécimal, les systèmes GNU l'inverse."


Peut-être utiliser xxd :

% xxd -l 16 -p /dev/random
193f6c54814f0576bc27d51ab39081dc

Attention !

hexdump et xxd donner les résultats dans un endianness différent !

$ echo -n $'\x12\x34' | xxd -p
1234
$ echo -n $'\x12\x34' | hexdump -e '"%x"'
3412

Expliqué simplement. Big-endian contre little-endian :D


Linux
  1. Expiration du délai dans un script shell ?

  2. Façon d'intégrer un binaire exécutable dans un script shell sans outils supplémentaires ?

  3. La signification de $ ? Dans un script shell ?

  4. Script de translittération pour le shell Linux

  5. Convertir .txt en .csv dans le shell

Comment exécuter une commande dans un script shell ?

Comment convertir DATE en UNIX TIMESTAMP dans un script shell sur MacOS

Exécuter un script shell en parallèle

Répertoire courant du script shell ?

Un fichier .sh peut-il être un malware ?

déterminer le shell dans le script pendant l'exécution