批处理中有pause命令,为什么运行后还会直接关闭?

来源:百度知道 编辑:UC知道 时间:2024/05/24 13:08:54
文件中用了多次pause 都看不到
请按任意键继续. . .
几个字,文件中没有用goto语句,即使用,也是返回到上面的某些行
但为什么if语句的字符串比较都用引号,例如
if "%1"=="" echo 无参数
语句可能会发生错误(用鼠标把桌面上的文件拖到bat文件上),但
if )%1(==)( echo 无参数
不会,即使括号不配对
实在抱歉,我提问前用的命令后来都忘了,各位的回答就没法验证了

有错误命令。

这样子定为错误:
开始>运行>输入"cmd">然后将批处理的内容复制,在命令提示行里面粘贴,这样子看看在那里出现了错误。

在批处理中for 后面的变量%应该是两个,即要用%%i,而不是%i.
试试看

命令不正确?

批处理执行完毕了。就关闭了。PAUSE只是显示一个状态让你心里有数。

把你的代码贴出来,你的代码绝对是出问题了..
我猜大概就是你的FOR或者是IF的括号没有成对,也就是少了一个.呵呵后。..

之前的说法有问题,抱歉..

你改成如此

@echo off
if [1]==[] echo 无参数
echo %1
pause

这样就可以了,因为你如若是 if "%1"=="" 这样会出现双引号的问题..因为你拖进的文件有可能包含双引号或者空格..