Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


diagnoz_, уберите «chcp 1251» и просто сохраняйте пакетный файл в кодировке OEM/866. Кавычки также не стоит указывать в значениях переменных окружения, указывайте их непосредственно в командах, то есть вот так:
Код: Выделить весь код
set PROG=c:\Program Files\7-Zip\7z.exe
set SOURCE=Источник_копирования\*
set DESTINATION=\\server\\папка\папка1\папка2\Backup_%DATE%.7z
"%PROG%" a -mx=9 -ssw "%DESTINATION%" "%SOURCE%\*"
Цитата diagnoz_:
но вот не пишется лог в тот каталог куда и происходит копирование архива, а вместо того пишется в каталог установки 7zip с датой создания. если же вручную запускаю этот bat из того каталога где он лежит, то лог создается в том же каталоге, где и сам bat-файл. »
Всё именно так, как и заказывали:
Цитата diagnoz_:
%PROG% t "\\server\\папка\папка1\папка2"\*.7z -bse0 >> backup_%DATE%.log »
— Вы ведь не указываете путь, вот он и берётся для backup_%DATE%.log текущим.

Если требуется:
Цитата diagnoz_:
лог в тот каталог куда и происходит копирование архива »
то его и укажите.
Примерная болванка (не проверялось)
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

rem Определение переменных сред для каталогов
set sApplication=%ProgramFiles%\7-Zip\7z.exe
set sSource=Источник_копирования\*
set sDestination=\\server\\папка\папка1\папка2\
set sFileName=Backup_%DATE%

"%sApplication%" a -mx=9 -ssw "%sDestination%\%sFileName%.7z" "%sSource%"

rem Тестирование архива на целостность и вывод результатов в файл
>>"%sDestination%\%sFileName%.log" "%sApplication%" t -bse0 "%sDestination%\%sFileName%.7z"

endlocal
exit /b 0

Я, правда, не понял, зачем Вы подавляете поток ошибок при тестировании? В чём смысл? И само тестирование зачем — ведь можно просто использовать ExitCode, возвращаемый 7-Zip, при создании архива?
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:51, 18-12-2017 | #2