Вариант для распечатки |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Изначальное сообщение | [ Отслеживать ] |
"Раздел полезных советов: Работа с русскими именами файлов в ..." | +3 +/– | |
Сообщение от auto_tips (?), 30-Ноя-10, 23:16 | ||
Одна из неожиданных проблем, возникающих при обмене файлами с пользователями Windows - странное поведение ZIP-архивов. Казалось бы, достаточно правильно настроить кодировки... Не тут-то было! | ||
Ответить | Правка | Cообщить модератору |
Оглавление |
Сообщения | [Сортировка по ответам | RSS] |
1. Сообщение от Natrio (?), 30-Ноя-10, 23:16 | +/– | |
Чуть не забыл – ссылки оригинальные патчи от AltLinux и их обсуждения: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #5, #9, #11, #33 |
2. Сообщение от Аноним (-), 30-Ноя-10, 23:35 | +/– | |
Можно просто распаковать в корень уже собранные пакеты unzip от альта с того же сизифа. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #6 |
3. Сообщение от Anonym (?), 01-Дек-10, 00:04 | +/– | |
Проще отказаться от Zip, чем заниматься пропатчиванием | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #4, #8, #22 |
4. Сообщение от iZEN (ok), 01-Дек-10, 02:24 | +/– | |
Ношу ZIP-архивы с русскими именами файлов, сделанные под Windows, на работу. Там распаковываю, пакую в 7-Zip и приношу домой. :) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 |
5. Сообщение от iZEN (ok), 01-Дек-10, 02:25 | +/– | |
> Чуть не забыл – ссылки оригинальные патчи от AltLinux и их обсуждения: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #7 |
6. Сообщение от Natrio (?), 01-Дек-10, 08:28 | +/– | |
Я очень благодарен авторам патчей из AltLinux, и я дал ссылки на оригинал. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #2 |
7. Сообщение от Natrio (?), 01-Дек-10, 08:36 | +/– | |
Многие уже пробовали "закинуть" подобные патчи в мэйнстрим Info-ZIP, но их либо отклоняли, либо удаляли в следующей версии. Разработчики Info-ZIP занимаются новой версией формата, рассматривая его как предпочтительный. Авторам же патчей ZIP требуется лишь для совместимости, а для всего остального у них есть другие архиваторы. Взаимопонимания в такой ситуации достичь сложно. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #5 |
8. Сообщение от Natrio (?), 01-Дек-10, 08:49 | +/– | |
Я могу отказаться от ZIP, но не могу заставить отказаться от него тех, кто приносит/присылает/выкладывает такие архивы, а также тех, у кого никакие другие просто не откроются. ZIP нужен именно для этого. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 |
9. Сообщение от john (??), 01-Дек-10, 11:17 | +/– | |
При распаковке имена на русском | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 Ответы: #10 |
10. Сообщение от Natrio (?), 01-Дек-10, 11:27 | +/– | |
Оригинальные unzip и zipinfo, будучи собранными с опциями по умолчанию, при выводе в консоль заменяю вопросительными знаками всё, что выходит на пределы ASCII. Есть опция NO_SETLOCALE, которая снимает блокировку, и в моём патче эта опция включена. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #9 Ответы: #12 |
11. Сообщение от Natrio (?), 01-Дек-10, 11:39 | +/– | |
А это мои патчи (ссфлки есть в тексте статьи): | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 |
12. Сообщение от john (??), 01-Дек-10, 13:08 | +/– | |
> Оригинальные unzip и zipinfo, будучи собранными с опциями по умолчанию, при выводе | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #10 |
13. Сообщение от Andrey Mitrofanov (?), 01-Дек-10, 14:08 | +/– | |
>| iconv -f cp1252 -t cp850 | iconv -f cp866 | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #14, #15 |
14. Сообщение от Natrio (?), 01-Дек-10, 14:45 | +/– | |
Нет, у 7z со своими и раровскими архивами всё нормально. А вот зип он распаковывает своеобразно – имена в кодировке cp866, но с лишним левым байтом перед каждым символом. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #13 Ответы: #16 |
15. Сообщение от Natrio (?), 01-Дек-10, 15:48 | +/– | |
По уточнённым данным, 7z (p7zip) под Linux начинает распаковывать zip–архивы в неискаженной кодировке cp866, если указать ему ключ -no-utf16 или установить переменную LC_CTYPE в любое значение, отличное от пустой строки. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #13 Ответы: #25 |
16. Сообщение от x0r (??), 01-Дек-10, 15:55 | +/– | |
отправте пожалуйста багрепорт | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #14 |
17. Сообщение от Аноним (-), 02-Дек-10, 06:37 | +/– | |
А AltLinux-у отправили свои улучшенные патчи? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
18. Сообщение от мше (?), 02-Дек-10, 08:53 | +/– | |
> более "продвинутые" форматы архивов | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #19 |
19. Сообщение от Natrio (?), 02-Дек-10, 09:18 | +/– | |
Чем именно не распаковывается? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #18 Ответы: #23 |
20. Сообщение от fank (?), 02-Дек-10, 13:10 | +/– | |
о, сколько лисапетов сразу | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #21 |
21. Сообщение от Natrio (?), 02-Дек-10, 16:58 | +/– | |
ЗдОрово! А патчи для unzip-6.0 и zip-3.0 уже есть? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #20 Ответы: #24 |
22. Сообщение от vovans (ok), 02-Дек-10, 21:51 | +/– | |
конечно, можно ля-лякать, если с реальными людьми не общаешься... Но задолбёшься каждому объяснять... Не стоит на пустом месте раздражаться и раздражать других. Если есть возможность в течении нескольких минут исправить ситуацию раз и надолго, то нечего мозги компостировать себе и людям. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #3 |
23. Сообщение от мше (?), 03-Дек-10, 11:45 | +/– | |
хм... действительно | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #19 |
24. Сообщение от fank (?), 03-Дек-10, 18:48 | +/– | |
> ЗдОрово! А патчи для unzip-6.0 и zip-3.0 уже есть? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #21 |
25. Сообщение от h31 (ok), 03-Дек-10, 21:29 | +/– | |
Бесполезно. Помогли только патчи от RusXMMS. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #15 Ответы: #38 |
26. Сообщение от StrangeAttractor (ok), 07-Дек-10, 23:51 | +/– | |
Спасибо. А как тут статью плюсануть? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
27. Сообщение от ананим (?), 08-Дек-10, 23:54 | +/– | |
предпочитаю использовать fuse-zip - man fuse-zip | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
28. Сообщение от autopilot (?), 10-Дек-10, 11:47 | +/– | |
Debian 4 Etch + unzip-5.52-9etch1 | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #29 |
29. Сообщение от Natrio (?), 10-Дек-10, 11:51 | +/– | |
Проверил – у моих патченых zip и unzip такой ошибки нет. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #28 |
30. Сообщение от prof_alex (?), 11-Дек-10, 01:57 | +/– | |
Что-то не пойму. Собрал unzip из calculate | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #31 |
31. Сообщение от Natrio (?), 11-Дек-10, 09:52 | +/– | |
Чуть выше я уже писал, что unzip/zipinfo, собранный без опции NO_SETLOCALE, при выводе в консоль заменяет все не-ASCII символы вопросительными знаками. Мой патч к unzip | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #30 |
32. Сообщение от Forth (??), 12-Дек-10, 14:55 | +/– | |
Использую ваш патч, в unzip появились опции -I и -O и все равно вопросики в консоли. :( | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #34, #35 |
33. Сообщение от sanek (??), 12-Дек-10, 15:04 | +/– | |
| ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #1 |
34. Сообщение от Natrio (?), 13-Дек-10, 09:14 | +/– | |
Нет у меня федоры, проверить не могу. Могу подсказать следующее: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #32 |
35. Сообщение от Natrio (?), 13-Дек-10, 09:17 | +/– | |
4) Вопросики только в консоли? Имена распакованных файлов правильные? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #32 |
36. Сообщение от Yo (??), 13-Дек-10, 13:56 | +/– | |
# можно и так: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #37 |
37. Сообщение от Natrio (?), 14-Дек-10, 08:43 | +/– | |
Не получится. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #36 |
38. Сообщение от sergey (??), 16-Дек-10, 13:45 | +1 +/– | |
7z l -no-utf16 <fname>.zip | iconv -f cp866 | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #25 |
39. Сообщение от pva0xd (ok), 23-Дек-10, 17:38 | +/– | |
Natrio, а не могли бы вы пояснить в каких случаях нужена опция -K? И вообще зачем изменёно умолчание для dosify? | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #41 |
40. Сообщение от RUR (?), 24-Дек-10, 12:51 | +/– | |
По мотивам Yo, создаём бат файл: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #42 |
41. Сообщение от Natrio (?), 24-Дек-10, 12:55 | +/– | |
Опция -K обратна опции -k, то есть отключает "dosify". | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #39 |
42. Сообщение от Natrio (?), 24-Дек-10, 13:01 | +/– | |
Я начинал именно с таких скриптов, только получаются они очень неуклюжими. Кроме того, zipinfo, будучи собранным без дополнительных опций (у меня так и было), НЕ ВЫВОДИТ русские имена в консоль, заменяя их на ?????, то есть эти скрипты на половине систем не будут работать без пересборки пакета unzip. А если уж пересобирать, то я решил лучше пропатчить и больше не мучаться со скриптами. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #40 |
43. Сообщение от lucentcode (ok), 07-Апр-11, 01:49 | –1 +/– | |
C unzip 6.0.1 вы можете использовать опцию -O cp866 когда надо распаковать файл, пожатый в windows. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #44 |
44. Сообщение от aleks (??), 03-Мрт-12, 23:10 | +/– | |
> C unzip 6.0.1 вы можете использовать опцию -O cp866 когда надо распаковать | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #43 |
45. Сообщение от aleks (??), 03-Мрт-12, 23:13 | +/– | |
Ну и в догонку под bsd 7.3 отлично работает такой способ например: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #46 |
46. Сообщение от Natrio (?), 03-Мрт-12, 23:37 | +/– | |
Возможно, но статья не об этом, а о том, как НОРМАЛЬНО работать в *nix с ОБЫЧНЫМИ, то есть DOS/Win zip-архивами. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #45 Ответы: #47 |
47. Сообщение от aleks (??), 04-Мрт-12, 02:10 | +/– | |
Ок, поясню. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #46 Ответы: #48 |
48. Сообщение от Natrio (?), 04-Мрт-12, 08:51 | +/– | |
В статье выше тоже приводятся примеры таких костылей, только это не называется "нормально работать". Это называется "перекодировать кривую кодировку имён файлов после распаковки", это ДАВНО ИЗВЕСТНО, и статья совсем не об этом. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #47 Ответы: #49 |
49. Сообщение от aleks (??), 04-Мрт-12, 20:32 | +/– | |
Эта статья как раз из серии "а мыши кололись, плакали, но продолжали жрать кактус" как ни посмотри. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #48 Ответы: #53 |
50. Сообщение от Ю.Т. (?), 15-Дек-12, 13:37 | +/– | |
> Одна из неожиданных проблем, возникающих при обмене файлами с пользователями Windows - | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #51 |
51. Сообщение от Natrio (?), 15-Дек-12, 14:05 | +/– | |
Не так уж всё и сложно :) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #50 Ответы: #52 |
52. Сообщение от Ю.Т. (?), 15-Дек-12, 14:33 | +/– | |
> Не так уж всё и сложно :) | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #51 |
53. Сообщение от Хрен с горы (?), 15-Сен-13, 16:26 | +/– | |
Люто, бешено плюсую. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #49 |
54. Сообщение от uropb (??), 21-Янв-15, 15:45 | +/– | |
Для меня лично наиболее удобным оказался вариант с mc. Миднайт командер, оказывается, нормально заходит в архивы с русскими именами. При копировании из архива в нужную директорию русские имена сохраняются. И никаких патчей. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
55. Сообщение от x230 (ok), 21-Июн-20, 16:47 | +/– | |
В Manjaro KDE (в dolphin) такая проблема решилась после того, как я сделал следующее: | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
56. Сообщение от Аноним (56), 23-Июн-20, 17:01 | +/– | |
Я тут патчики написал к unzip и p7zip, которые раз и навсегда решают проблему с кодировками windows-архивов. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
57. Сообщение от Лев (?), 05-Сен-20, 18:30 | +/– | |
Привет из будущего! Столкнулся с этой столетней проблемой, когда запускал unzip по SSH через PHP из-под WSL Win10 😳 Оказалось, что локаль консоли удаленного хоста зависит от локали локального хоста (и от настроек SSH), поэтому у меня при подключении из-под Windows была локаль C.UTF-8, а из-под соседних linux'ов en_US.UTF-8, и соответственно из-под linux все было нормально, имена файлов после unzip отображались корректно, а из-под windows - знаки вопроса. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
58. Сообщение от Аноним (56), 12-Окт-20, 14:48 | +/– | |
Удивительно, насколько ни один из архиваторов (в ключая unzip) на linux не в состоянии правильно определять кодировку зипов без подсказок. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Ответы: #59 |
59. Сообщение от Аноним (56), 12-Окт-20, 15:15 | +/– | |
На самом деле, алгоритм там чуууточку сложнее, ведь ещё и в ANSI зипы встречются (но чтоб без дублирования в UTF8 - исключительно редко). В скрипте ziplist это учитывается, совсем идеальный алгоритм можно подсмотреть там. | ||
Ответить | Правка | Наверх | Cообщить модератору | ||
Родитель: #58 |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |