Comment afficher l'en-tête d'un fichier sous Unix?

10

afin de voir l'en-tête du fichier (wmv, mp3, binaire [pe / elf / machos], avi, etc ....) quelle ligne de commande sous unix pourrait effectuer cela?

avec impatience quelques réponses: D

capede
la source
3
Pas de programmation. Avez-vous même essayé la filecommande?
1
voulez-vous voir les premiers octets en hexadécimal? xxd est votre ami.
akira

Réponses:

8

J'utilise généralement od -bc {filename} | headpour regarder l'en-tête d'un fichier binaire. viewfonctionne aussi, mais je trouve qu'il est généralement préférable de voir la sortie directement sur le terminal.

Arcege
la source
2

head affichera les premières lignes de code dans un fichier.

Une `` bonne '' façon de les mettre en hexadécimal, tirez le fichier dans gvim et dans le `` menu '' (si vous n'aimez pas taper des commandes abstraites), il y a une option pour mettre les données par xxd pour les entrer en hexadécimal. C'est un bon endroit universel pour ouvrir un fichier comme celui-ci car vous pourrez copier / coller et avoir tous les merveilleux outils vimà portée de main!

g19fanatic
la source
1

Identifier est également utile pour les images:

Identify décrit le format et les caractéristiques d'un ou plusieurs fichiers image. Il signalera également si une image est incomplète ou corrompue. Les informations affichées incluent le numéro de scène, le nom du fichier, la largeur et la hauteur de l'image, que l'image soit colorée ou non, le nombre de couleurs dans l'image, le nombre d'octets dans l'image, le format de l'image ( JPEG, PNM, etc.), et enfin le nombre de secondes nécessaires pour lire et traiter l'image.

Tamara Wijsman
la source
1

Un autre programme est bvi si vous êtes familier avec vi.

Joey1978
la source
0

Pour les fichiers ELF , je suppose que cela readelfest recommandé.


Par exemple:

$ readelf -h ELF_FILE
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           ARM
  Version:                           0x1
  Entry point address:               0x15565
  Start of program headers:          52 (bytes into file)
  Start of section headers:          2919696 (bytes into file)
  Flags:                             0x5000402, Version5 EABI, hard-float ABI, <unknown>
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         8
  Size of section headers:           40 (bytes)
  Number of section headers:         39
  Section header string table index: 36
Campa
la source