Проверка условия в bat команде? День добрый. Имеется простенький скрипт
@echo off
mkdir "Z:\1c_backup\Backup-%date:.=%"
xcopy /E "C:\1c_backup" "Z:\1c_backup\Backup-%date:.=%\"
TIMEOUT /T 2 /NOBREAK
rd /s /q "C:\1c_backup"
md "C:\1c_backup"
TIMEOUT /T 10 /NOBREAK
Как сделать чтобы перед удалением "rd /s /q "C:\1c_backup"", проверялось, выполнено ли условие "mkdir "Z:\1c_backup\Backup-%date:.=%"". Если нет, то прекратить выполнение скрипта

15 Янв 2021 в 19:45
146 +1
0
Ответы
1

Вам нужно добавить проверку условия перед выполнением команды удаления. Для этого можно использовать конструкцию IF NOT EXIST:

@echo off
mkdir "Z:\1c_backup\Backup-%date:.=%"
IF NOT EXIST "Z:\1c_backup\Backup-%date:.=%" (
echo Условие не выполнено, прекращаем выполнение скрипта
EXIT
)
xcopy /E "C:\1c_backup" "Z:\1c_backup\Backup-%date:.=%\"
TIMEOUT /T 2 /NOBREAK
rd /s /q "C:\1c_backup"
md "C:\1c_backup"
TIMEOUT /T 10 /NOBREAK

Этот скрипт первым делом создает директорию с помощью команды mkdir, затем проверяет с помощью IF NOT EXIST, существует ли эта директория. Если условие не выполнено, то скрипт выводит сообщение и завершает свое выполнение с помощью команды EXIT. Если условие выполнено, то скрипт продолжает выполнение командой xcopy и остальными командами.

17 Апр 2024 в 21:16
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир