1、call用来调用执行另一个bat或者cmd文件(当然也可执行其它格式的可执行文件),
start用来调用执行其他格式的可执行文件(exe,com,vbs...)。
2、call具有goto的功能,在程序中实现灵活跳转,而start则不具有这种功能。以下
是我试验用的程序段。
:begin
@echo off
set /a a=%random%%%10
echo %a%
pause>nul
if %a% geq 5 (call :run2) else call :run1
:run1
echo 111111111
call :ex
:run2
echo 222222222
:ex
call :begin
3、call具有传递变量到外部的批处理上并能回传,而start则不具备回传功能(可以将call换成start
试)
=========
::b.bat如下:
@echo off
for /l %%i in (1,1,3) do call b.bat %%i
pause
==============
::b.bat如下:
@echo off
echo number is %1
 

 

转载自:http://www.bathome.net/viewthread.php?tid=3162&highlight=start