LINUX.ORG.RU
ФорумAdmin

Необходимо перевети ФС из koi8 в utf8


0

0

Собственно всё понятно из заголовка... На серваке крутился ASP по некоторым причинам он пересталдостойно себя вести (он изначально криво был поставлен не мной и выпрямлять его было делом оч не занимательным) Руководство купило SLES 9 и я вот его переставляю. Но что-то торможу на стёт того как из koi8 перевести имена в utf. Пмогите пож.

anonymous

А есть объективные соображения против koi8-r?

Если есть, тогда так:

rfn.sh:
#!/bin/sh
nn=`echo "$1" | iconv -f koi8-r -t utf-8 | tr -d "\n"`
if [ "_$1" != "_$nn" ] ; then mv "$1" "$nn" ; fi
exit

А теперь команда:

# find / -exec ./rfn.sh '{}' \;

Только man прочти сначала...

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

Это да... Только вот похоже что find сначала строит дерево, а потом выполняет команду по всему дереву, так как в уже переименованых папках он ничего не трогает... Вот если бы можно было примонтировать винт с указанием кодировки (как в vfat)...

anonymous
()
Ответ на: комментарий от anonymous

Ну так измени скрипт!

#!/bin/sh
fp=`dirname "$1" | iconv -f koi8-r -t utf-8 | tr -d "\n"`
fn=`basename "$1"`
nn=`echo "$fn" | iconv -f koi8-r -t utf-8 | tr -d "\n"`
if [ "_$fn" != "_$nn" ] ; then mv "$fp/$fn" "$fp/$nn" ; fi
exit

no-dashi ★★★★★
()
Ответ на: комментарий от svyatogor

А как же быть с бинарными, png и прочими файлами, там же получается тоже кодировка измениться, или я чё то не понял.

Если не понял, то просвятите убого :)

cyclon ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.