[Comm] convert hex to readable text

Yevgeniy Bazhenov =?iso-8859-1?q?bazhen_=CE=C1_mail=2Ekz?=
Пн Мар 15 17:00:10 MSK 2004


On Mon, 15 Mar 2004 18:56:33 +0600
"Yevgeniy Bazhenov" <bazhen на mail.kz> wrote:

> On Mon, 15 Mar 2004 10:44:07 +0500
> BSW <bsw71 на mail.ru> wrote:
> 
> > Yevgeniy Bazhenov wrote:
> > > Здравствуйте!
> > > 
> > > Подскажите, пожалуйста, как преобразовать 
> > > hex вида 3320200d0a3535324241323439383145 в читаемый текст,
> > > желательно (но не обязательно) средствами shell?
> > 
> > Вот так сгодится?
> > echo '<твой hex>' | perl -e ' $str=<>; foreach $i (unpack("A2" x 
> > length($str), $str)) { print chr(hex($i)); }; '
> 
> К сожалению, не совсем. А не подскажете, как после каждого второго символа
> пробел вставить? Тогда можно будет сделать
<skip>

Вобщем, правильный ответ такой -


sed 's/\(..\)/\1 /g' <$HEX_TXT | 
awk '
BEGIN {
      for(i=0;i<256;++i)
      x[sprintf("%02X",i)]=sprintf("%c",i)
}
{
      for(i=0;i++<NF;)
      printf "%s",x[toupper($(i))]
}
' >${HEX_TXT}.txt



Подробная информация о списке рассылки community