LINUX.ORG.RU

Как искать и читать сигнатуры?

 , , , ,


1

1

Мне нужно прочитать медиафайлы. Например конечная сигнатура jpeg должна быть 0xFF 0xD9, я ввожу это в поиск HEXEDIT он говорит что это invalid hexa string. Как это делается? Кроме этого надо будет прочитать еще метаинформацию.

PS вероятно надо переводить сигнатуры в 16-ричный вид?

PS по такому виду типа FF D8 FF тоже ничего не ищецца:(

Кстати поддердиваются ли в hexedit регулярки? Например FF в начале строки как найти?



Последнее исправление: no2700 (всего исправлений: 4)
Ответ на: комментарий от no2700

Не удивляет, что у тебя ничего не вышло. Хоть-бы на скриншот как следует посмотрел.

mcview - это просмотрщик, «встроенный» в Midnight commander.

andytux ★★★★★
()
Ответ на: комментарий от andytux

сорри. подскажи плз, как его там включить? навигацию я там знаю. Вот у меня выделена в списке картинка, дальше что делать?

no2700
() автор топика
Ответ на: комментарий от andytux

все, нашел методом тыка.но он кажется кодировки неверно отображает. Виду такую хрень: ^@^@

no2700
() автор топика
Ответ на: комментарий от no2700

Не дальше, а самым первым делом, не только в MC, в любой программе, жмешь «F1» - читаешь справку. Внизу окна MC подсказка, какие команды выполняются при нажатии первых десяти F-кнопок.

Ставишь указатель на файл. Жмешь «F3», чтобы этот файл открылся в просмотрщике. В зависимости от типа файла, могут сработать «встроенные ассоциации» и откроется в другой «ассоциированной программе». В этом случае открываешь по сочетанию клавиш «shift+F3». Откроется как «обычный файл». Опять смотришь подсказку внизу панелей. Жмешь «F4», чтобы переключился в «шестнадцатиричный вид»

andytux ★★★★★
()
Ответ на: комментарий от gremlin_the_red

все я нашел это надо было открывать в «просмотрщике» по f3

как конкретно вводить в строку поиска, по какой маске, чтобы сигнатуру найти?

0xFF 0xD9 - вот это чтобы найти что надо писать в строке поиска?

no2700
() автор топика
Ответ на: комментарий от no2700

*ить, в скриншот хоть глянь, я тебе только для этого его рисовал. Нехера тебе делать «шестнадцатиричном мире», ни букв, ни картинок не видишь.

andytux ★★★★★
()
Ответ на: комментарий от andytux

помоги плз. мы уже на последнем шаге:) я все нашел только формат строки поиска теперь надо задать

как конкретно вводить в строку поиска, по какой маске, чтобы сигнатуру найти?

0xFF 0xD9 - вот это чтобы найти что надо писать в строке поиска?

И какой вид поиска при этом выбирать, там есть опции «обычный», «шестнадцетиречный», «по шаблону» и прочее

no2700
() автор топика
Ответ на: комментарий от andytux

а, то есть надо полностью ввводить 8 символов с пробелом, по части он не ищет? Щас попробую

no2700
() автор топика
Ответ на: комментарий от no2700

Верхний правый угол скриншота. Только у меня там «d8 ff». Видно, что шаблон выбран «шестнадцатиричный». В нижнем правом углу выполнен поиск «JFIF» в текстовом виде.

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 1)
Ответ на: комментарий от no2700

Вот только что в mc сделал на первом попавшемся jpeg-e F3 (вызов mcview), F4 (переключение на 16-ричку), F7 (поиск), выбрал режим «Шестнадцатиричный», ввёл FF D9 (именно в таком порядке и с пробелом между байтами) — благополучно нашёлся маркер в конце файла.

Если ты делал так же, то либо это не JPEG, либо он битый.

P.S. И да, если во время работы mcview (но не при открытом диалоге поиска) нажать F1, оно показывает справку С ПРИМЕРОМ 16-ричного поиска.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от andytux

JFIF у меня ищет.

Я что то не совсем понял как сделать выбор шестнадцатиричного шаблона. Я когда открываю окно поиска, ввожу 0xff 0xd9 а потом стрелкой вниз выбираю шестнадцетиричный и жму enter, вероятно он не выбирается, это надо как то отдельно ставить опцию, да?

no2700
() автор топика
Ответ на: комментарий от hobbit

выбрал режим «Шестнадцатиричный»

Вот это как ты делаешь?

no2700
() автор топика
Ответ на: комментарий от no2700

а потом стрелкой вниз выбираю шестнадцетиричный и жму enter

В порядке бреда — после стрелок, но до Энтера нажми ещё пробел, чтобы нужный режим реально выбрался (можно, кстати, и мышью, если она у тебя в mc работает).

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

Ура, получилось, спасибо!

Говоришь так будто бы это стандартный способ выбора опции нажать пробел, ага:)

no2700
() автор топика
Ответ на: комментарий от no2700

В TUI-программах — довольно-таки стандартный.

Ну и тыканье мышью с большой вероятностью тоже должно работать, по крайней мере, в эмуляторе терминала, даже через SSH. Тогда пробел не нужен.

P.S. И даже в гуёвых программах, если по чекбоксам ходить табуляцией, пробел их триггерит, вот только что на своей кутешной программе проверил. Правда, к radio buttons (полям однозначного выбора) это не относится, там текущий пункт автоматически следует за стрелкой.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 3)
Ответ на: комментарий от no2700

Это стандартный. А вот "«мышиный способ» выглядит весьма курьезно.

А в GUI ты чекбоксы чем устанавливаешь?

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 2)
Ответ на: комментарий от mmindworker

Я и говорю — стандарт для TUI (и с оговоркой для GUI).

hobbit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.