2014-01-15 46 views
0

我已经制作了这段代码,它会生成一个分隔批处理文件,然后执行它,但是当我执行它时会关闭,是否有人知道我做错了什么。这是该软件的卸载代码。批量创建一个分隔批处理文件并在内部执行它

@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

相关问题