1

Здравствуйте
есть документы .html я их перекодирую из windows-1251 в utf-8 вот так:

find -maxdepth 1 -iname  "*.html"  -type f -exec bash -c "cat {} | iconv -c -f WINDOWS-1251 -t UTF-8> ./res/{}" \;

но вот проблема, после перекодировки созданные файлы открываются в программе Kate как файлы в кодировке win  и все русские символы в кракозябрах.
это сигнал для меня что что-то не так я сделал.Катя должна сразу автоопределить кодировку и открыть в Утф.

2

А в самих исходниках страниц кодировка исправлена?
Как допустим в этой странице:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
...
Был, был и весь вышел...

3

Lupo Alberto пишет:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

ага. надо ещё эти html'ки обработать sed'ом. Но и это ещё не всё: у вас будут проблемы, если в ссылках содержаться русские буквы.

Diiimonn, вот здесь посмотрите...

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

4

метатеги обработаны, но дело не в том как отображаются страници в браузере(а отображаются они нормально), а почему они не распознаются как утфские катей(может и другими прогами не пробовал еще).Это просто беспокоит и смущает сознание, гдето значит еще что-то недоконвертировано...

5

Diiimonn пишет:

Это просто беспокоит и смущает сознание, гдето значит еще что-то недоконвертировано...

дык проверьте той-же sed.
в русском тексте должны быть лишь символы от \x20 до \x7f, табуляции, <CR>, <LF>, ну и русские буквы. Русские буквы для sed являются буквами, и попадают в RE /\w/. (если у вас локаль правильно установлена)

А ещё переведите в UNIX формат перевода строки, sed 's/\r$//', может kate попросту считает, что раз перевод строки из MS-DOS, то и кодировка такая.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

6

drBatty пишет:

А ещё переведите в UNIX формат перевода строки, sed 's/\r$//', может kate попросту считает, что раз перевод строки из MS-DOS, то и кодировка такая.

то что надо ag
благодарю