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

Исходное сообщение
"Сменить кодировку на UTF-8 во всех файлах сайта."

Отправлено Alex , 27-Ноя-08 02:46 
Всем привет! Есть сайт (весь контент - около 4 ГБ) на CP1251.
Как перекодировать все скрипты и HTML в UTF-8 без BOM? Есть SSH на арендованном сервере с su.

Чувствую, что нужно копать в сторону find + iconv. Пока не получается.

Спасибо заранее!


Содержание

Сообщения в этом обсуждении
"Сменить кодировку на UTF-8 во всех файлах сайта."
Отправлено Alabama , 27-Ноя-08 04:32 
#/bin/sh
dir=.

for i in $dir/*
            do
                if [ -f $i ]
                  then
                      cp $i $i.utf
                      iconv -f cp1251 -t utf-8 $i -o $i.utf
                      mv $i.utf $i
                fi
            done

меняет в текущей


"Сменить кодировку на UTF-8 во всех файлах сайта."
Отправлено angra , 27-Ноя-08 09:11 
И спотыкается на первом же файле с пробелами, а в некоторых случаях даже портит файлы. Переменные желательно брать в двойные кавычки.
Вообще неплохо было бы начать с поиска готовой утилиты в дистре. Если нет то man find на предмет exec или man xargs.

"Сменить кодировку на UTF-8 во всех файлах сайта."
Отправлено Pahanivo , 28-Ноя-08 15:00 
>Всем привет! Есть сайт (весь контент - около 4 ГБ) на CP1251.
>
>Как перекодировать все скрипты и HTML в UTF-8 без BOM? Есть SSH
>на арендованном сервере с su.
>
>Чувствую, что нужно копать в сторону find + iconv. Пока не получается.
>
>
>Спасибо заранее!

Ага для начала научится выдергивать find список файлов, причем учеть файло с пробелами и начинающиеся с точки (.htaccess). Find по дефолту точко-файлы не ищет.
Затем xargs или как то по другом подсовывать в качестве параметра iconv (насчет iconv не уверен, особо не ковырял).


"Сменить кодировку на UTF-8 во всех файлах сайта."
Отправлено posix , 04-Фев-09 15:30 
>Всем привет! Есть сайт (весь контент - около 4 ГБ) на CP1251.
>
>Как перекодировать все скрипты и HTML в UTF-8 без BOM? Есть SSH
>на арендованном сервере с su.
>
>Чувствую, что нужно копать в сторону find + iconv. Пока не получается.
>
>
>Спасибо заранее!

for x in *.HTML; do cat $x |iconv -f cp1251 -t utf-8 > `echo $x | tr [A-Z] [a-z]`;wait; done


"Сменить кодировку на UTF-8 во всех файлах сайта."
Отправлено angra , 05-Фев-09 02:16 
Молодец, мало того, что ответил на сообщение двух месячной давности, так еще и в ответе нюбские ошибки. Поздравляю с обретением звания некрофил-недоучка.