Как мне показать заголовок файла в Unix?


10

чтобы увидеть заголовок файла (wmv, mp3, двоичный [pe / elf / machos], avi и т. д.), какая командная строка в unix могла бы выполнить это?

с нетерпением жду некоторых ответов: D


3
Не программирование. Вы даже попробовали fileкоманду?

1
Вы хотите увидеть первые несколько байтов в шестнадцатеричном формате? xxd твой друг.
Акира

Ответы:


9

Этот вопрос немного широк по объему, поэтому предлагается подходить поэтапно.

  1. Используйте команду file для получения информации первого уровня: File (Unix) .
  2. Затем впоследствии используйте FFMPG для аудио-видео заголовков .
  3. И дамп для объектных файлов .

Смотрите также: параметры командной строки ffmpeg


8

Я обычно использую, od -bc {filename} | headчтобы посмотреть на заголовок двоичного файла. viewтоже работает, но я нахожу, что вообще лучше видеть вывод прямо на терминале.


2

head покажет первые несколько строк кода в файле.

«Хороший» способ получить его в шестнадцатеричном виде - перетащить файл в gvim, а в «меню» (если вам не нравится вводить абстрактные команды) есть возможность поместить данные через xxd и получить их в шестнадцатеричном виде. Это хорошее универсальное место для открытия такого файла, так как вы сможете копировать / вставлять, а также иметь все замечательные инструменты vimв ваших руках!


1

Определить также полезно для изображений:

Укажите, описывает формат и характеристики одного или нескольких файлов изображений. Он также сообщит, является ли изображение неполным или поврежденным. Отображаемая информация включает в себя номер сцены, имя файла, ширину и высоту изображения, независимо от того, является ли изображение цветным или нет, количество цветов в изображении, количество байтов в изображении, формат изображения ( JPEG, PNM и т. Д.) И, наконец, количество секунд, необходимое для считывания и обработки изображения.



0

Для файлов ELF , я думаю, readelfэто рекомендуется.


Например:

$ 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
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.