Войти

Показать полную графическую версию : Не выполняется bat файл разархивирования 7zip архива


Jeka124
13-07-2021, 14:46
Всем привет. Проблема заключается в следующем. Есть команда по разархивированию 7zip архива, в командной строке все работает ок, но через bat файл отказывается работать.

Пример "C:\Program Files (x86)\7-Zip\7z.exe" x "B:\Проекты другие\Публикация объявлений\work\478 Door+Latch.zip" -o"B:\Проекты другие\Публикация объявлений\work\Door Latch"

Jeka124
13-07-2021, 16:38
уже нашел проблему, русские слова в названиях, когда изменил названия папок все стало работать, но хотелось бы знать как работать с путями которые содержат кириллицу а то каждый раз переименовывать папки как-то не то.

megaloman
13-07-2021, 17:13
Jeka124, я это предполагал, поэтому попросил у Вас файл. ИМХО, Вы создали файл в 1251 кодировке. Проблема имеет два решения.
1. По умолчанию bat-файлы должны быть написаны в 866 кодировке, если в них содержатся кириллические символы. Сохраните Ваш bat-файл в 866 кодировке.
2. Загрузите в bat-файле нужную кодовую страницу. Где-то вверху батника напишите строку
>nul Chcp 1251
и тогда можете написать свой батник в кодировке 1251.
Примеры файлов в разной кодировке прилагаю. Единственное, чтобы не создавать Ваши пути и программы, я поставил перед командой Echo.

Jeka124
13-07-2021, 19:05
Загвоздка в том, что этот файл генерируется другой программой и автоматически кодировка UTF - 8, и из-за этого собственно возникает проблема.

В начале bat файла мне нужно прописать эту строку - >nul Chcp 1251 чтобы все работало?

alpap
13-07-2021, 19:31
файл генерируется другой программой и автоматически кодировка UTF - 8 »
кодировка в самом файле (который архивируется или наоборот) - причем тут она, когда вы составляете bat файл, который должен работать с путями, содержащими кириллицу. Вот этот bat и надо сохранять в кодировке 866.
Или вы хотите сказать что какая-то программа генерирует и составляет самостоятельно bat файл для дальнейшей работы?

megaloman
13-07-2021, 19:35
Jeka124, С UTF-8 не получится.
Попробуйте >nul chcp 65001, но если файл генерируется чем-то сторонним, то непонятно, как туда попадет эта строка.

Jeka124
13-07-2021, 19:49
Я работаю с программой ZennoPoster и с помощью это программы генерирую сам bat файл, но как я написал выше автоматом все сохраняется в кодировке UTF - 8

bat файл генерируется по моим критериям и прописать туда могу, что угодно

alpap
13-07-2021, 20:42
Я работаю с программой ZennoPoster »
тогда:
вариант 2 megaloman и
прога exiftool -charset cp1251

DJ Mogarych
13-07-2021, 20:56
Перешли бы на Powershell и не мучались, тем более что работать с zip он умеет безо всякого 7-zip.

megaloman
13-07-2021, 21:39
Jeka124, У меня с UTF отработало. Файл прикрепил. Единственное, у меня там свои пути к 7-Zip и диск




© OSzone.net 2001-2012