Поменять кодировку у группы файлов

vold57
На сайте с 01.10.2007
Offline
261
3518

Нужно поменять кодировку у нескольких тысяч html файлов на локальном компьютере. Как это можно сделать? Заранее благодарен.

Аудит сайтов - главная часть это тщательная ручная работа, а не отчеты сервисов и программ (https://vold57.com/audit). Продвижение сайтов (https://vold57.com/seo)
J
На сайте с 02.02.2009
Offline
53
#1

Perl:


#!/usr/bin/perl -w
use strict;
use Text::Iconv;

my $dir = '/home/user/html/';
my $converter = new Text::Iconv('windows-1251','utf8');

opendir(DIR, $dir);
@files = sort(grep(/*.html$/, readdir(DIR)));
closedir(DIR);
chdir $dir;

foreach my $file (@files){
open FF,"+<$file";
print FF $converter->convert(join("\n",<FF>));
close FF;
}

Не тестил, но как-то так.

sashka_
На сайте с 27.01.2010
Offline
103
#2

в метатеге поменять надо или самих файлов ?

Знаю PHP, JS, jQuery. Помощь для вашего сайта. (/ru/forum/840509).
[Удален]
#3

Как-то так:


iconv -f CP1251 -t KOI8R *.html > *.htm

Если не получится, то такой подсмотренный вариант:

find . -name cs.js -exec iconv -f iso-8859-2 -t utf8 {} -o {}.tmp \; -exec mv {}.tmp {} \;
BD
На сайте с 22.03.2010
Offline
5
#4
nikitian:
Как-то так:

эти варианты только для линукса, причем первый некорректен

vold57
На сайте с 01.10.2007
Offline
261
#5
sashka_:
в метатеге поменять надо или самих файлов ?

Самих файлов. Если в мета теге, то воспользовался бы какой-нибудь прогой замены, например BK Replace EM.

vold57 добавил 05.04.2010 в 14:53

jumash, спасибо. Сейчас попробую. Сразу не внимательно посмотрел. Показалось, что это на PHP.

J
На сайте с 02.02.2009
Offline
53
#6
vold57:
Самих файлов. Если в мета теге, то воспользовался бы какой-нибудь прогой замены, например BK Replace EM.

vold57 добавил 05.04.2010 в 14:53
jumash, спасибо. Сейчас попробую. Сразу не внимательно посмотрел. Показалось, что это на PHP.

Или, как вариант, скачать MS VS Express C# какой-нибудь и начать учить язык на этом примере :DDD

Помнится, так заморачивался, когда надо было BOM снимать массово под виндой :)

vold57
На сайте с 01.10.2007
Offline
261
#7

Решил проблему с помощью TotalReplacer. Программа бесплатная. Осуществляет пакетную замену и кодировку тоже может менять. Скачать можно тут topperharley.ru

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий