|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Не создается лог целостности архива. |
|
CMD/BAT - Не создается лог целостности архива.
|
Ветеран Сообщения: 5069 |
Здравствуйте. Сделал следующий пакетный файл для резервного копирования БД через 7zip с одного ПК по сети на другой ПК, ну и закинул его в шедулер :
cmdow @ /HID @echo on chcp 1251 :: Определение переменных сред для каталогов 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%\* :: Тестирование архива на целостность и вывод результатов в файл %PROG% t "\\server\\папка\папка1\папка2"\*.7z -bse0 >> backup_%DATE%.log Резервное копирование отрабатывает, затем происходит тестирование архива, но вот не пишется лог в тот каталог куда и происходит копирование архива, а вместо того пишется в каталог установки 7zip с датой создания. если же вручную запускаю этот bat из того каталога где он лежит, то лог создается в том же каталоге, где и сам bat-файл. Подскажите, что не так, возможно нужно внести еще какие-то коррективы в код? спасибо. |
|
Отправлено: 09:15, 18-12-2017 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать Пример, моим кодом папки архивируются, а файлы ниже нет.
|
Последний раз редактировалось diagnoz_, 14-11-2019 в 16:57. Отправлено: 09:03, 19-12-2017 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата diagnoz_:
|
|
Отправлено: 09:33, 19-12-2017 | #12 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать @echo off setlocal enableextensions enabledelayedexpansion :: Определение переменных сред для каталогов set sApplication=%ProgramFiles%%\7-Zip\7zG.exe set sSource=F:\папка\* set sDestination=\\server\папка1\папка2\папка2\папка3\Backup_%DATE%.7z set sFileName=Backup_%DATE% "%sApplication%" a -mx=9 -ssw "%sDestination%\%sFileName%.7z" "%sSource%" :: Тестирование архива на целостность и вывод результатов в файл >>"%sDestination%\%sFileName%.log" "%sApplication%" t -bse0 "%sDestination%\%sFileName%.7z" endlocal exit /b 0 cmdow @ /HID @echo on :: Определение переменных сред для каталогов set PROG=c:\Program Files\7-Zip\7zG.exe set SOURCE=F:\папка\* set DESTINATION=\\server\папка1\папка2\папка2\папка3\Backup_%DATE%.7z "%PROG%" a -mx=9 -ssw "%DESTINATION%" "%SOURCE%"\* :: Тестирование архива на целостность и вывод результатов в файл %PROG% t "\\server\папка1\папка2\папка2\папка3"\*.7z -bse0 >> backup_%DATE%.log На проверку архива, не смотрите, я уже о ней и не думаю... В пути "куда копировать", как ранее писал есть пробелы в названии папок с русскими буквами. |
Отправлено: 09:43, 19-12-2017 | #13 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать diagnoz_, используйте rem, а не ::. Не надо 7zG.exe, пусть будет 7z.exe. В sDestination должен быть только путь, зачем Вы туда опять втиснули имя файла, которое в моём коде определяется отдельной переменной и ниже?
@echo off setlocal enableextensions enabledelayedexpansion rem Определение переменных сред для каталогов set sApplication=%ProgramFiles%%\7-Zip\7z.exe set sSource=F:\папка\* set sDestination=\\server\папка1\папка2\папка2\папка3 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 |
Отправлено: 11:19, 19-12-2017 | #14 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать Iska, архив кидало в корень диска потому, что не видело в пути папок с русскими именами, а именно:
с иероглифами в пути в папках с русскими символами. указав для примера путь полностью на латинице, все отлично сохранилось по указанному пути. |
Последний раз редактировалось diagnoz_, 19-12-2017 в 12:58. Отправлено: 12:51, 19-12-2017 | #15 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 13:04, 19-12-2017 | #16 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать Iska, да за кодировку понял из первого Вашего поста..
![]() ![]() и кстати, в коде выше, нет строки chcp 1251. вот я за него и говорю. его и пробовал использовать. сам же bat сохранен OEM/866 (пользуюсь Notepad ++). строка с русскими буквами выходит снова не по тому пути,если путь "русский": "X:\╨æ╤â╤à╨│╨░╨╗╤é╨╡╤Ç╨╕╤Å\╨¢╨╡╨╜╨░ ╨Ü\╨á╨╡╨╖╨╡╤Ç╨▓╨╜╤ï╨╡ ╨▒╨░╨╖╤ï 1╨í" |
Последний раз редактировалось diagnoz_, 19-12-2017 в 13:15. Отправлено: 13:09, 19-12-2017 | #17 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать а если в коде стоит \\server\drive_name\New folder\New folder\New folder, то код отрабатывается успешно по этому пути. "русский" путь, код минует и пишется с начала в корень диска, где имя диска на латинице, а затем пошли папки с иероглифами как выше, и в конечной папке архив.
|
Последний раз редактировалось diagnoz_, 19-12-2017 в 13:32. Отправлено: 13:25, 19-12-2017 | #18 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата diagnoz_:
Цитата diagnoz_:
Вообще, Notepad++ не самый удачный выбор для работы с пакетными файлами. Самый удачный — Far Manager и его редактор: Пример:
![]() |
||
Последний раз редактировалось Iska, 19-12-2017 в 14:15. Отправлено: 13:32, 19-12-2017 | #19 |
Ветеран Сообщения: 5069
|
Профиль | Отправить PM | Цитировать Заморил я Вас. сделал, как Вы написали выше, но увы, поверьте, снова "минует" "русский"путь в коде и какого-то черта начинает сохранять с корня диска\╨æ╤â╤à╨│╨░╨╗╤é╨╡╤Ç╨╕╤Å\╨¢╨╡╨╜╨░ ╨Ü\╨á╨╡╨╖╨╡╤Ç╨▓╨╜╤ï╨╡ ╨▒╨░╨╖╤ï 1╨í". ну и если путь на английском, вида: \\server\drive_name\New folder\New folder\End folder, оо все гаразд, архив создается в End folder.
я когда-то, менял кодировку в cmd на этой windows Server 2003, думается все отсюда и растет. P.S. да черт с той белибердой, ничего не мешает создать отдельно папку на латинице и сохранять архивы туда. |
Отправлено: 14:20, 19-12-2017 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Разное - Не создается учетная запись | 3DpacTe | Microsoft Windows 10 | 6 | 21-01-2016 11:48 | |
Не создается подфорум!!! | Dzhigurda | Хочу все знать | 7 | 17-04-2015 17:38 | |
HDD - не создается раздел | Maxvel17 | Накопители (SSD, HDD, USB Flash) | 10 | 24-12-2014 14:14 | |
2008 - [решено] sfc/scannow не удается провести сканирование целостности файлов Windows Server 2008 | Rubick | Windows Server 2008/2008 R2 | 12 | 10-01-2012 20:55 | |
Разное - Проверка целостности - не принимает родной диск. | sokolovpa | Microsoft Windows 2000/XP | 11 | 04-08-2010 07:31 |
|