Добрый день!
Простите, пока буду в каждом сообщении писать оговорку про то, что я новичок и вопросы у меня соответствующие. Разбираю файл bmp. Для того, чтобы вывести в Терминале информацию о файле в задании предложено использовать такую команду:
xxd -c 24 -g 3 -s 54 file.bmp
0000036: ffffff ffffff 0000ff 0000ff 0000ff 0000ff ffffff ffffff ........................
000004e: ffffff 0000ff ffffff ffffff ffffff ffffff 0000ff ffffff ........................
0000066: 0000ff ffffff 0000ff ffffff ffffff 0000ff ffffff 0000ff ........................
000007e: 0000ff ffffff ffffff ffffff ffffff ffffff ffffff 0000ff ........................
0000096: 0000ff ffffff 0000ff ffffff ffffff 0000ff ffffff 0000ff ........................
00000ae: 0000ff ffffff ffffff 0000ff 0000ff ffffff ffffff 0000ff ........................
00000c6: ffffff 0000ff ffffff ffffff ffffff ffffff 0000ff ffffff ........................
00000de: ffffff ffffff 0000ff 0000ff 0000ff 0000ff ffffff ffffff ........................
Я посмотрела значение flags
http://linuxcommand.org/man_pages/xxd1.html
-g обозначет количество байтов на "группу", то есть -g 3 как
раз означает, что каждая группа имеет 3 байта. Но если я верно
поняла первый flag -с, то -g получается повторяет информацию.
Ествественно, я не пытаюсь оспорить стандарт (!), а пытаюсь понять
его.
-s мне не очень понятен. 54 как я понимаю означает первые
54 байта bmp файла (14 + 40 на два headers). Далее сказано, что
без этого -s flag файл начнется с текущей позиции. Это как?
Спасибо!
xxd -c 24 -g 3 file.bmp