Возникла задача отправлять и принимать данные от отлаживаемого устройства. Да не по абы какому интерфейсу, а по неведомому и недосягаемому ethernet. Для этого использовал утилиту netcat. Однако данная утилита не умеет отправлять и принимать данные в шестнадцатеричном виде, что очень меня огорчало и побуждало в процессе отладки всячески поносить разработчика. Приходилось извращаться всяко-разно. Однако наткнулся на другую очень полезную штуку - ncat. Почти то же самое что и netcat, но умеет делать дамп принимаемых данных в нужном формате при помощи ключика -x. Итого:
1) echo -ne "\x01\x02\x03\x04" | ncat -i 1000 -x output.hex address port
2) cat output.hex
Как можно догадаться \x01\x02\x03\x04 - это байты, которые отправляются в устройство, где \xHH - число в шестнадцатеричном представлении.
Комментариев нет:
Отправить комментарий