|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Valentin Davydov 2:5020/400 20 Aug 2007 16:16:01 To : Victor Sudakov Subject : Re: напечатать строку вместо кодов символов --------------------------------------------------------------------------------
> From: Victor Sudakov <vas@mpeks.tomsk.su>
> Date: Mon, 20 Aug 2007 11:38:18 +0000 (UTC)
>> >
>> >Есть строка вида "\D0\A0\D1\83\D1\87\D0\BA\D0\B8\D0\BD".
>> >Чем бы удобнее в командной строке воспользоваться, чтобы напечатать
>> >сами символы вместо их кодов? Hасколько я понял, printf(1) должен
>> >уметь, но не соображу, как воспользоваться.
>
>> Ты уверен, что printf(1) должен? Я там про LC_CTYPE ничего не нашёл.
>
>Hе понял, при чём тут LC_CTYPE. Я говорил про это:
>
> \num
> \0num Write an 8-bit character whose ASCII value is the 1-, 2-,
> or 3-digit octal number num.
>
>А перекодировать из UNICODE я сам сумею.
>
>
>> А если ты считаешь, что умеет, то
>> printf "%b" $(printf "\\%o" $(echo $string | sed 's/\\/ 0x/g'))
>
>Бррр.
Что - "Бррр"? Я сначала было это дело через backquote нарисовал, вот там
действительно бррр - backslashи в строку не влезли.
Вал. Дав.
--- ifmail v.2.15dev5.4
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор Архивное /ru.unix.bsd/2572581371de3.html, оценка из 5, голосов 10
|