URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7353
[ Назад ]

Исходное сообщение
"Найти символ © в файле и заменить"

Отправлено Arpo , 07-Май-08 12:13 
Народ есть текстовый фаил в нем много строк среди которых есть такие: Otprazdnuem Den© Pobedy vmeste!
Как выбрать все строки где есть символ сopyright и заменить его на апостроф(')???

Бошка совсем не варит...


Содержание

Сообщения в этом обсуждении
"Найти символ © в файле и заменить"
Отправлено phpcoder , 07-Май-08 12:16 
>Народ есть текстовый фаил в нем много строк среди которых есть такие:
>Otprazdnuem Den© Pobedy vmeste!
>Как выбрать все строки где есть символ сopyright и заменить его на
>апостроф(')???
>
>Бошка совсем не варит...

[c0der@xxx ~]$ cat TEST
Otprazdnuem Den© Pobedy vmeste!
[c0der@xxx ~]$ sed "s|©|'|" TEST
Otprazdnuem Den' Pobedy vmeste!
[c0der@xxx ~]$

Возможно, тот факт что у меня локаль юникодная на это как-то влияет.


"Найти символ © в файле и заменить"
Отправлено Arpo , 07-Май-08 12:19 
>[оверквотинг удален]
>>Бошка совсем не варит...
>
>[c0der@xxx ~]$ cat TEST
>Otprazdnuem Den© Pobedy vmeste!
>[c0der@xxx ~]$ sed "s|©|'|" TEST
>Otprazdnuem Den' Pobedy vmeste!
>[c0der@xxx ~]$
>
>Возможно, тот факт что у меня локаль юникодная на это как-то влияет.
>

Видимо да потому что я не могу ввести этот символ в консоли..
Я так пробовал... Мож как то с ASCII кодами можно побаловатся... HEX код символа в A9 вроде...


"Найти символ © в файле и заменить"
Отправлено phpcoder , 07-Май-08 12:43 
>[оверквотинг удален]
>>[c0der@xxx ~]$ cat TEST
>>Otprazdnuem Den© Pobedy vmeste!
>>[c0der@xxx ~]$ sed "s|©|'|" TEST
>>Otprazdnuem Den' Pobedy vmeste!
>>[c0der@xxx ~]$
>>
>>Возможно, тот факт что у меня локаль юникодная на это как-то влияет.
>>
>
>Видимо да потому что я не могу ввести этот символ в консоли..

Тогда надо как-то задать этот символ в его числово представлении..

Но у меня этого не получилось.

Короче, я только вот так смог:
[c0der@mvo ~]$ iconv -f utf-8 -t ISO-8859-5 TEST -r\? | sed "s|??|\\'|"
Otprazdnuem Den' Pobedy vmeste!

Но это, видимо, не всегда и не только для знака копирайта будет работать..


"Найти символ © в файле и заменить"
Отправлено Arpo , 07-Май-08 12:52 
>[оверквотинг удален]
>
>Но у меня этого не получилось.
>
>Короче, я только вот так смог:
>[c0der@mvo ~]$ iconv -f utf-8 -t ISO-8859-5 TEST -r\? | sed "s|??|\\'|"
>
>Otprazdnuem Den' Pobedy vmeste!
>
>Но это, видимо, не всегда и не только для знака копирайта будет
>работать..

Вроде заработало так: iconv -f 8859 -t 646fr TEST |sed  "s/_/\'/g"

Спасиба phpcoder, с меня пиво...