Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: zip & русские имена  (Прочитано 21062 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн musicfanat

  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: zip & русские имена
« Ответ #15 : 23 Марта 2009, 13:12:50 »
Видимо, для многих актуально. Для меня тоже, апую тему.

zsa

  • Гость
Re: zip & русские имена
« Ответ #16 : 24 Марта 2009, 01:11:03 »
Возможно, установить кодировку для консоли, в которой извлекаем файлы консольным архиватором.
export LC_ALL=ru_RU.CP1251Или запускаем графический архиватор из неё.
Этого вроде должно быть достаточно.
« Последнее редактирование: 24 Марта 2009, 03:33:14 от zsa »

Оффлайн artembgv

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: zip & русские имена
« Ответ #17 : 08 Июня 2009, 15:17:41 »
Решение (при работе по крайней мере в консоли) может быть найдено на
http://freesource.info/wiki/Lokalizacija/SituacijaSArxivatorami

Оффлайн Srsamara

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: zip & русские имена
« Ответ #18 : 07 Ноября 2009, 21:07:50 »
Решение нашел, только немного неудобное, качается 7z для Windows запускается в Wine, правда не научился им открывать по умолчанию, и нельзя перетаскивать архивы мышкой.
Ubuntu 9.10 i386,Athlon 3000+ на Nforce 4

Оффлайн VinnyPooh

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2577
  • В работе
    • Просмотр профиля
    • Linux для чайников (пых-пых)
Re: zip & русские имена
« Ответ #19 : 07 Ноября 2009, 21:45:30 »
https://bugs.launchpad.net/ubuntu/+source/file-roller/+bug/177929

этот баг здесь и висит уже давно, все кому не наплевать дружно регистрируемся на LP и пишем своё пожелание, хотя бы через гуглопереводчик.
Иначе процесс так и не сдвинется.

Оффлайн gantellus

  • Старожил
  • *
  • Сообщений: 1276
    • Просмотр профиля
Re: zip & русские имена
« Ответ #20 : 07 Ноября 2009, 22:12:40 »
лично я отказался от zip в пользу 7z
Придумайте ещё более дружественный интерфейс, и мир породит ещё более тупого юзера (с)
С2Duo 2.4 Ghz, Geforce 8800, Maya 44 PCI

Оффлайн VinnyPooh

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2577
  • В работе
    • Просмотр профиля
    • Linux для чайников (пых-пых)
Re: zip & русские имена
« Ответ #21 : 07 Ноября 2009, 22:32:28 »
Вот когда вам Windows юзер пришлёт zip файл, а вы откроете и там будет каша из имён, тогда поймёте.

Оффлайн MA3X

  • Активист
  • *
  • Сообщений: 649
    • Просмотр профиля
Re: zip & русские имена
« Ответ #22 : 07 Ноября 2009, 23:01:58 »
Если мне Windowsюзер что-то подобное пришлет, то он больше ничего больше прислать не сможет.
Почему - додумайте сами, мне лень.
;)
Microsoft isn't the answer.
Microsoft is the question, and the answer is NO.

Оффлайн lengli

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: zip & русские имена
« Ответ #23 : 28 Января 2010, 22:21:11 »
Вот скрипт  Писал для себя - переупаковать библиотеку Пухлого (32 тыс книг). Каждая книга - ZIP архив, файлик русскими буквами под оффтопиком. Рекурсивно по всем поддиректориям распаковал - перекодировал название -  упаковал по-человечески. Может кого спасет.

#!/bin/bash
############################################################################################################
# Скрипт для рекурсивной переупаковки/переименования архивов-ZIP.
# В каждом архиве находится TXT-текстовый файл, имя которого русскими буквами под Windows.
# При распаковке под Linux получаем крякозяблы.
# При этом все эти ZIP-архивы разложены по папкам, которые тоже русскими буквами, но они уже под Linux
# записаны в нормальной кодировке/локале.
# Скрипт РЕКУРСИВНО проходит все папки распаковывает архивы перекодирует имя файлов под UTF-8,
# удаляет старый архив, и запаковывает в новый НОРМАЛЬНЫЙ .tar.gz архив (имена отсаются русские).
# Скрипт использовался для перепаковки _БИБЛИОТЕКИ ПУХЛОГО_ - 30 тыс. книг
# PS: Обрабатывает *.TXT файлы в *.ZIP архивах.
# PSS: Отслеживает дубли текстовых файлов - делает инкремент в имени архива
# PSS: Установить пакет: convmv . Например так: sudo apt-get install convmv
# Автор: Sergey Lysenko
# e-mail: lengli@yandex.ru
#############################################################################################################

clear
echo Переупаковка архивов
echo

# Распаковать рекурсивно все архивы, и УДАЛИТЬ исходные архивы
find -type f -name '*.zip' -or -name '*.ZIP' | while read i; do
# Запомнить текущую директорию
CUR_DIR=$(pwd)
# Получить имя файла и путь к нему
DIR_NAME=$(dirname "$i")
FILE_MAME=$(basename "$i")
# Перейти в каталог  архив
cd "$DIR_NAME"
# Распаковать и в нижний регистр
unzip -L "$FILE_MAME"
# Удалить исходник
rm -f "$FILE_MAME"
# Конвертировать русское имя файла в UTF-8
# !!! Работает только для русских имен файлов упакованых в ZIP под Windows
convmv -f cp1252 -t cp850 --notest *.txt && convmv -f cp866 -t utf-8 --notest *.txt
# Обработать переконвертированные текстовые файлы - упаковать
find -type f -name '*.txt' | while read TXT_FILE; do
# удалить из имени первые 2 символа ./ (точка слэш)
TXT_FILE=${TXT_FILE:2}
# Сформировать начальное имя архива
ARC_NAME=${TXT_FILE%.*}".tar.gz"
# Суффикс - нужен для инкремента
SUFFIX=""
# Если такой архив есть?
while [ -e "$ARC_NAME" ]
do
# Да, такой архив есть - инкремент имени
let "SUFFIX+=1"
ARC_NAME=${TXT_FILE%.*}" - ($SUFFIX).tar.gz"
done
# Запаковать файл в архив и удалить источник
tar --gzip -c -v --remove-files -f "$ARC_NAME" "$TXT_FILE"
done
# Вернуться в исходную директорию
cd "$CUR_DIR"
done

echo ПРИЕХАЛИ!!!

exit 0

Оффлайн Agafonov

  • Администратор
  • Старожил
  • *
  • Сообщений: 1114
  • Нам помехи не страшны!
    • Просмотр профиля
    • Живу в сети...
Re: zip & русские имена
« Ответ #24 : 22 Апреля 2010, 21:16:18 »
В итоге вот: https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/477755

Много багов нашел на трекере, но всё сводится к этому, надо патчить unzip.
Ubuntu 16.04 LTS @ Desktop & Servers

Оффлайн Agafonov

  • Администратор
  • Старожил
  • *
  • Сообщений: 1114
  • Нам помехи не страшны!
    • Просмотр профиля
    • Живу в сети...
Re: zip & русские имена
« Ответ #25 : 15 Мая 2010, 18:04:19 »
В итоге вот: https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/477755

https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/580961 - нажмите "affects me" сверху и подпишитесь на баг, если интересно, коменты писать крайне не рекомендуется
Ubuntu 16.04 LTS @ Desktop & Servers

Оффлайн DuhLesa

  • Любитель
  • *
  • Сообщений: 79
  • Созданный быть полезным другим.
    • Просмотр профиля
    • Северная чернь
Re: zip & русские имена
« Ответ #26 : 16 Ноября 2010, 09:37:13 »
Феноменально(!) на тот момент когда я подписывался под актуальностью этого "бага" за его устранение проголосовало всего 157 человек.  Это что же? всего 157 человек мучаются с зип-архивами и русскими именами файлов? Поактивнее как-то нужно товарищи... поэнергичнее!  Проблема имеет место быть и отравляет жизнь ежедневно многим - давайте заявим о ней.

Если мне Windowsюзер что-то подобное пришлет, то он...
Ерунду не городите уважаемый!!! Уши просто вянут!
Пример:
          Сидит в госструктуре "тетка" и шлет Вам предписание в зип упакованое(экие пустяки что там отсканированный тиф бешенного разрешения ;) ), а распаковать его секретарю головная боль! И что Вы в такой ситуации сделаете? Что измените? Возьметесь(с юношеским максимализмом) воевать с "теткой из госструктуры"? (ой не начинайте без меня - я сейчас за попкорном сбегаю и друзей позову понаблюдать  ;D )  Остается принимать и обрабатывать! И "баг" описанный
Вот когда вам Windows юзер пришлёт zip файл, а вы откроете и там будет каша из имён, тогда поймёте.
встает очень даже болезненным ребром... острой понимаете ли гранью да на незащищенное место!

Словом итожа все выше сказанное... Не ленимся! Даже кто пока не столкнулся будьте так любезны пройдите и отголосуйте! Ссылку для Вас любезнейшим образом уже приготовили!

https://bugs.launchpad.net/ubuntu/+source/unzip/+bug/580961 - нажмите "affects me" сверху и подпишитесь на баг...

Оффлайн Rusher

  • Любитель
  • *
  • Сообщений: 64
  • http://www.aliis.com.ua
    • Просмотр профиля
    • Рекламне агентство "Алііс"
Re: zip & русские имена
« Ответ #27 : 19 Ноября 2010, 10:59:12 »
Та черт... С русскими именами все в порядке, не в порядке только, если имена эти в виндовой кодировке. То есть по большому счету на этот баг на*рать абсолютному большинству людей в мире, за исключением стран СНГ. А если допустить, что 1% населения СНГ использует Linux и пусть хотя бы ещё 30% (хотя это много, но пусть) от этого числа имеют проблемы с unzip и CP1251, а из этого числа подумаем сколько процентов озаботились этим багом и сколько процентов начало искать решения в интернете и нашли эту голосовалку... Совсем немного получится, если разобраться. Отсюда и низкое число проголосовавших.

Лично я за 4 года использования Ubuntu с такой херней ни разу не столкнулся - не потому что у меня нет этого бага, а потому что не попадались мне такие архивы, ну и сам я такие архивы не создавал. И вообще, мой ИМХО: пора на свалку этому CP1251.
Я міг би бути набагато краще ніж я є, але сил ледь вистачає на те, щоб бути самим собою ... © Макс Шнітов

Оффлайн Чистый

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 3473
  • nix - вот оно счастье...
    • Просмотр профиля
Re: zip & русские имена
« Ответ #28 : 19 Ноября 2010, 11:12:44 »
И вообще, мой ИМХО: пора на свалку этому CP1251.

Вы это M$ скажите, или гос конторам которые высылают архивы с файлами в этой кодировке, или универу который выкладывает задания в zip архиве все с файлами все в той же кодировке :( так что увы и ах придется или бороться или мириться с данным багом, но то что он столько лет уже известен то это как то удручает :(
Тестовый репозиторий kdeNeur ppa:devcode/kdeneur
各々が死ぬことをどのように決定する

Оффлайн rdf

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Re: zip & русские имена
« Ответ #29 : 19 Ноября 2010, 22:15:47 »
Насколько я понимаю эта проблема не является багом. Просто формат zip архива не сохраняет информацию о кодировке - он рассчитан на то, что запаковка и распаковка происходит в системах с одинаковой кодировкой. С таким же успехом можно говорить у велосипеда есть баг - приходиться крутить педали, а на мерсе - нет. Если надо использовать архив на системах с разными кодировками, то юзайте другой, более сложный формат (например 7z), либо настраивайте кодировку в убунте по умолчанию на cp1251 (в Windowsх utf8 настроить будет сложнее  :2funny:). Я, в свое время, тоже столкнулся с этой проблемой... пришлось ваять небольшой скриптик по конвертации имен файлов (iconv в помощь).

 

Страница сгенерирована за 0.036 секунд. Запросов: 23.