Быстро, доступно, безопасно!
Магазин готовых сайтов

Encoding

Encoding

Настройка сервера на FreeBSD 14.3 -> Кодировки

Когда необходимо перекодировать все файлы заданного типа в другую кодировку можно сделать это следующим образом.

Перекодирование с созданием резервных копий: find /home/example/public_html -name "*.txt" -type f -exec sh -c 'iconv -f WINDOWS-1251 -t UTF-8 "$1" > "$1.utf8" && mv "$1.utf8" "$1"' _ {} \;

Более сложный вариант: find /home/example/public_html -type f -name '*.txt' -print0 | xargs -0 -I{} sh -c 'f="$1"; if grep -Eqi "charset[[:space:]]*=[[:space:]]*[\"\x27]?windows-1251" -- "$f" || file -b --mime-encoding -- "$f" | grep -qi 1251; then t="$f.tmp"; t2="$f.tmp2"; iconv -f CP1251 -t UTF-8 -- "$f" > "$t" && perl -0777 -pe "s/(charset\\s*=\\s*[\"\\x27]?)(?:[Ww]indows-1251|[Ww]in-1251|[Cc][Pp]1251)([\"\\x27]?)/\\1utf-8\\2/g" -- "$t" > "$t2" && mv -- "$t2" "$f" && rm -f -- "$t"; fi' sh {}

Метки: encoding

Опрос

Адаптирован ли ваш сайт для смартфонов и планшетов? (голосов: 35)

  • Да - 4 (11%)
  • Нет - 2 (6%)
  • Не знаю - 1 (3%)
  • Нет сайта - 28 (80%)