22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
1

Нечитаемые символы после expand-archive

18.09.2018, 18:35. Показов 3143. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер,
Есть задача распаковывать zip архивы по конвееру.
Вроде все просто
PowerShell
1
ls 'E:\PS test\test' -File | foreach {Expand-Archive -Path $_.FullName -DestinationPath "E:\PS test\test\Распоковано" -Force }
но на выходе я получаю абракадабру
Copy of ЂЏ„_“б«гЈЁ_ћ¦_010910-300910.xls
Copy of ЂЏ„_“б«гЈЁ_Ћ§_010710-310710.xls
Copy of ЂЏ„_“б«гЈЁ_Ћ§_010910-300910.xls
Copy of ЂЏ„_“б«гЈЁ_‚‘_010510-310510 •а**Ґ*ЁҐ.xls
Copy of ЂЏ„_“б«гЈЁ_‚‘_010510-310510.xls
Copy of ЂЏ„_“б«гЈЁ_‚‘_010610-300610 (2).xls
Copy of ЂЏ„_“б«гЈЁ_‚‘_010710-310710.xls
Copy of ЂЏ„_“б«гЈЁ_‚‘_010910-300910.xls
Copy of ЂЏ„_“б«гЈЁ_†Є_010710-310710.xls
Copy of ЂЏ„_“б«гЈЁ_†Є_010910-300910.xls
Copy of “б«гЈЁ ЂЏ„_“б«гЈЁ_ЉЃ_150610-090710 иЁ*®¬®*в*¦.xls
Copy of “б«гЈЁ ЂЏ„_“б«гЈЁ_ЉЃ_150610-090710 •а**Ґ*ЁҐ.xls
Copy of •а**Ґ*ЁҐ ЂЏ„_“б«гЈЁ_†Є_010610-300610.xls
Peacock reports to revise.xlsx
{UPLOAD RESULT}_20100526.xls
§*¬Ґ** ¬ў®.xls
Ќ*Ў®а агббЄЁе ЎгЄў.xlsx
в®ў*а ¬ў®1 .xls
еа**Ґ*ЁҐ ¬ў®.xls


проблема лишь с этим командлетом, все остальные работают нормально. Причем он реагирует так именно на русские символы.
Для теста я взял файл xls c английскими буквами, заархивировал его и тут же с помощью PS разархивировал - Все ОК.
После этого я переименовал исходный файл на русские символы, заархивировал и опять скормил командлету - на выходя нечитаемые символы.
Проверил на нескольких машинах, результат тот же. Есть у кого умные мысли как это обойти?
Мне потом печатать нужно эти файлы, а с такими именами я не могу к ним обращаться.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.09.2018, 18:35
Ответы с готовыми решениями:

Нечитаемые Символы В Коде Java-агента
Здрасьте. Жила-была у меня серверная база с Java-агентами. Были в ней комментарии на русском,...

Замена подстроки - мешают нечитаемые символы
Есть в шаблоне строка со списком языков такого вида <a href="">Англ</a><a...

Нечитаемые символы при выполнении программы
pause echo pause exit При выполнении данного кода выдается ошибка ""pause" не является...

Вместо букв в файле отображаются нечитаемые символы
проблема со скачаными текстовыми файлами вместо нормальных букв какие-то символы

11
504 / 157 / 49
Регистрация: 27.02.2016
Сообщений: 793
19.09.2018, 02:18 2
не удается ваш печальный опыт воспроизвеати на машине c Active code page: 437 :-(

если вручную за/разахивировать кодовая страница имен не портится ? я так думаю что в вашем архиве OEM а машины с локализоывнной W нету у меня
0
22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
19.09.2018, 08:50  [ТС] 3
Я пробовал сам архивировать, а потом с PS разархивировать, результат тот же.
Windows у всех Английская стоит, но русскую кодировку читает без проблем. Для примера вложил 2 файла (1 просто xls, а второй, сделанный из него архив). Посмотрите, пожалуйста, даст ли у вас ошибку, при распаковывании этого архива. Спасибо.
Вложения
Тип файла: xlsx Набор русских букв.xlsx (14.1 Кб, 1 просмотров)
Тип файла: zip Набор русских букв.zip (11.3 Кб, 1 просмотров)
0
22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
19.09.2018, 10:27  [ТС] 4
Или может подскажете как их всех распечатать невзирая на кривое название?
0
Любознательный
5649 / 1667 / 311
Регистрация: 10.03.2016
Сообщений: 3,771
19.09.2018, 10:39 5
Цитата Сообщение от MGarry Посмотреть сообщение
Или может подскажете как их всех распечатать невзирая на кривое название?
Используйте внешний архиватор, для распаковки (например 7zip), т.к. такой архив упакован явно не PS, и тем более не командлетом compress-archive, ибо в этом случае кодировка наименований не ломается при распаковке...
0
22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
19.09.2018, 11:05  [ТС] 6
А не подскажете, как его встроить или хоть где это прочитать?
0
Любознательный
5649 / 1667 / 311
Регистрация: 10.03.2016
Сообщений: 3,771
19.09.2018, 12:55 7
Цитата Сообщение от MGarry Посмотреть сообщение
где это прочитать?
Википедия
Самый простой скрипт для распаковки:
PowerShell
1
2
$zip = 'c:\путь к каталогу архиватора\7z.exe'
dir *.zip|%{&$zip e $_}
у архиватора есть много ключей, с помощью которых настраивается и распаковка, и упаковка...
0
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
19.09.2018, 13:05 8
Цитата Сообщение от MGarry Посмотреть сообщение
Есть задача распаковывать zip архивы по конвееру.
Если возникли какие-то проблемы с кодировкой при использование Expand-Archive, то в качестве эксперимента можете попробовать shell.application или System.IO.Compression.FileSystem - Разархивация zip с заменой существующих файлов
0
22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
19.09.2018, 13:07  [ТС] 9
Эффект тот же..
И ладно бы только на моей машине, так и на остальных тоже самое.. Какая же настройка ломает кодировку?
0
Любознательный
5649 / 1667 / 311
Регистрация: 10.03.2016
Сообщений: 3,771
19.09.2018, 13:48 10
Цитата Сообщение от MGarry Посмотреть сообщение
Какая же настройка ломает кодировку?
да никакая не ломает... если упакуете архивы с помощью compress-archive, то и проблем с кодировкой не будет...
0
22 / 18 / 4
Регистрация: 28.07.2015
Сообщений: 167
19.09.2018, 13:59  [ТС] 11
Архивы я не пакую, а получаю с сайта.
0
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
19.09.2018, 14:48 12
Лучший ответ Сообщение было отмечено YuS_2 как решение

Решение

Цитата Сообщение от MGarry Посмотреть сообщение
Эффект тот же..
У [System.IO.Compression.ZipFile]::ExtractToDirectory() есть параметр Encoding. Вы пробовали его использовать, указывая разные кодировки?

ExtractToDirectory(String, String, Encoding)
1
19.09.2018, 14:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.09.2018, 14:48
Помогаю со студенческими работами здесь

Шифрование RSA. В результате шифровки присутствуют нечитаемые символы
Привет всем) На просторах интернета нашел код, подладил под себя, собрал шифратор\дешифратор....

Замена символа в выводном потоке - на консоль выводятся нечитаемые символы
Всем привет! Начал изучать программирование на Си. Как и полагается начал с Кернигана и Ричи....

Восстановление .doc, .xls, .ln4, .xml файлов после удаления. Нечитаемые крякозябры в doc
Прошу помощи! Ситуация такова: восстановленные файлы после удаления не отображаются правильно -...

Даны целое число n и символы s1,s2,.sn , среди которых есть двоеточие. Получить все символы после двоеточия
Задачка вроде понятная и я её даже решил,но я взял в основу строковый тип.Как в последствии...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru