2014-01-15 2 views
0

Я сделал этот код, и он делает септический пакетный файл, а затем выполняет его, но он закрывается, когда я выполняю его. Кто-нибудь знает, что я сделал неправильно. Это код для установки программного обеспечения.Batch Создание септетного командного файла и его выполнение внутри

@echo off 
setlocal enableextensions 
(
echo @echo off 
echo echo Start 
echo pause 
echo del /s /f /q "Path1" 
echo del /s /f /q "Path2" 
echo del /s /f /q "Path3" 
echo cls 
echo echo Done 
echo pause 
echo (del /q /f "%~dpfnx0" ^& exit /6 0) 
) > "%~dp0uni.bat" 
uni.bat 
+0

Вам нужно избегать ')' в последней эхо-строке. Открывающий кронштейн не является проблемой в пакетных файлах, но закрытие фактически закрывает цикл преждевременно, поскольку он не экранируется. – foxidrive

ответ

1

Вы должны

call uni.bat 

иного исполнение передаются целевым и командный файл нет возврата вызывается.

+0

Я выяснил, что это echo (del/q/f "% ~ dpfnx0" & exit/6 0), что является проблемой – 09stephenb

+1

Да - нужно избегать этого '&', префикс его с помощью каретки ('^') - так что попробуйте повторить «...^& ...' – Magoo

+0

Спасибо, я попробую это – 09stephenb

Смежные вопросы