Страница 1 из 1
Кириллица после Unzip под Linux - Проблема с кириллическими
Добавлено: 12 июл 2002, 14:22
Anonymous
Здрасте Всем.
Проблема состоит в следующем есть в zip-архиве несколько файлов имена которых набраны русскими буковками, при распаковке все было бы хорошо, но вот имена бесследно теряются, т.е. нечитаемы в любой кодировке.
Подскажите, плз. есть ли unzip который сохраняет кирилические названия фалов хоть в каком-то виде?
Заранее благодарен,
Surok.
Кириллица после Unzip под Linux
Добавлено: 16 июл 2002, 16:56
Anonymous
И как это сделать?
Кириллица после Unzip под Linux
Добавлено: 16 июл 2002, 21:06
ab
iconv_unzip() {
fromcp="$1"
tocp="$2"
archive="$3"
unzip -Z1 "$archive" | while read -r ; do
newname=$(echo "$REPLY"|iconv -f$fromcp -t$tocp)
if [ ! -z "$newname" ] ; then
dirn=$(dirname "$newname")
basen=$(basename "$newname")
if [ "$dirn" != "." ] ; then
mkdir -p "$dirn"
if [ "$dirn/" != "$dirn/$basen" ] ; then
unzip -p "$archive" "$REPLY" > "$newname"
fi
fi
fi
done
}
Вызов: iconv_unzip кодировка_в_архиве кодировка_в_системе архив.zip
Список поддерживаемых кодировок: iconv -l
Естественно, что не все комбинации имеют смысл.
Кириллица после Unzip под Linux
Добавлено: 17 июл 2002, 09:12
Anonymous
Большое спасибо!!!
Но на каком это языке написано?
мне просто надо на perl это реализовать ...
Кириллица после Unzip под Linux
Добавлено: 17 июл 2002, 14:21
ab
Quote: from ab on 10:12 - 17 Июля, 2002
Большое спасибо!!!
Но на каком это языке написано?
мне просто надо на perl это реализовать ...
Это bash. Зачем -- на перле?
Кириллица после Unzip под Linux
Добавлено: 17 июл 2002, 14:33
Anonymous
Upload и разархивирование zip-файлов - это одна из функций библиотеки документов с веб-интерфейсом.
Все cgi-скрипты - на perl.
Кириллица после Unzip под Linux
Добавлено: 17 июл 2002, 14:58
ab
Что же, как говорится, переписывание кода на Perl оставлю читателям в качестве упражнения.

Думаю, что основная идея ясна.
Кириллица после Unzip под Linux
Добавлено: 17 июл 2002, 15:15
Anonymous
Да, спасибо.