Появилась необходимость преобразовать имена файлов из одной кодировки в другую на ftp сервере. Таких файлов собралось на 1Тб и нужно было перекодировать с cp1251 на koi8-r которую хорошо читает CLI FreeBSD.
# cd /usr/ports/ # make search name='convmv' Port: convmv-1.14 Path: /usr/ports/converters/convmv Info: Convert filenames from one encoding to another Maint: kcwu@csie.org B-deps: perl-5.8.9_3 R-deps: perl-5.8.9_3 WWW: _http://j3e.de/linux/convmv/man/ # cd /usr/ports/converters/convmv && make install clean
Пользоваться утилитой легко и для начала нужно выбрать исходную кодировку и необходимую. Далее посмотрим в тестовом режиме как будет выглядеть перекодирование и если все в порядке то приступим к конвертированию.
Я знал, что все файлы загружали из Windows систем, а там как известно кодировка cp1251 ее то я и выбрал в качестве исходной и мне было нужно всего навсего выставил нужную кодировку koi8-r. Вы можете пробовать любые варианты кодировок. Приступим к проверке.
# cd /home/ftp/ # convmv -r -f cp1251 -t koi8-r Games/ Starting a dry run without changes... mv "Games/Arcade/бЕЯЕКЮЪ ТЕПЛЮ II.rar" "Games/Arcade/Веселая ферма II.rar" mv "Games/Arcade/ЯСОЕП ЙНПНБЮ.rar" "Games/Arcade/супер корова.rar" mv "Games/Arcade/ВСДН ТЕПЛЮ.rar" "Games/Arcade/чудо ферма.rar" mv "Games/Arcade/АЮЬЕМЙХ.rar" "Games/Arcade/башенки.rar" No changes to your files done. Use --notest to finally rename the files.
Как видим все в порядке файлы стали читабельны и теперь нам необходимо запустить с параметром --notest для выполнения конвертирования.
# convmv -r -f cp1251 -t koi8-r --notest Games/ ~~ Ready!
Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer
Raven2000 напиши что в роли
Raven2000 напиши что в роли фтп сервера
RE:Raven2000 напиши что в роли
??? кто в роли ftp сервера? Это я привел пример, где можно применить эту утилиту конвертирования кодировок файлов.
Если хочешь разобраться... Так иди и разбирайся!
[ igNix.ru | Технология жизни - технологии будущего ] [ Forum.igNix.ru ]
AzureZ порадовал :))) это
AzureZ порадовал :))) это очень важно
А кто знает как
А кто знает как преобразовывать имена файлов в архиве, сделанной под виндой, а разархивируемом на линуксе? Вин1251 в утф8 при этом автоматически не преобразуется...
Хорошая, полезная заметка.
Raven2000, большое теме "русское" мерси за оч. полезную заметку, помогло и сэкономило время.