2 回答

TA貢獻1830條經驗 獲得超9個贊
從批處理程序調用另一個批處理程序。
CALL [drive:][path]filename [batch-parameters]
batch-parameters 指定批處理程序所需的命令行信息。
如果命令擴展名被啟用,CALL 會如下改變:
CALL 命令現在將卷標當作 CALL 的目標接受。語法是:
CALL:label arguments
一個新的批文件上下文由指定的參數所創(chuàng)建,控制在卷標被指定
后傳遞到語句。您必須通過達到批腳本文件末兩次來 "exit" 兩次。
第一次讀到文件末時,控制會回到 CALL 語句的緊后面。第二次
會退出批腳本。鍵入 GOTO /?,參看 GOTO : EOF 擴展名的描述,
此描述允許您從一個批腳本返回。
另外,批腳本文本參數參照(%0、%1、等等)已如下改變:
批腳本里的 %* 指出所有的參數(如 %1 %2 %3 %4 %5 ...)
批參數(%n)的替代已被增強。您可以使用以下語法:
%~1 - 刪除引號("),擴充 %1
%~f1 - 將 %1 擴充到一個完全合格的路徑名
%~d1 - 僅將 %1 擴充到一個驅動器號
%~p1 - 僅將 %1 擴充到一個路徑
%~n1 - 僅將 %1 擴充到一個文件名
%~x1 - 僅將 %1 擴充到一個文件擴展名
%~s1 - 擴充的路徑指含有短名
%~a1 - 將 %1 擴充到文件屬性
%~t1 - 將 %1 擴充到文件的日期/時間
%~z1 - 將 %1 擴充到文件的大小
%~$PATH : 1 - 查找列在 PATH 環(huán)境變量的目錄,并將 %1
擴充到找到的第一個完全合格的名稱。如果環(huán)境
變量名未被定義,或者沒有找到文件,此組合鍵會
擴充到空字符串
可以組合修定符來取得多重結果:
%~dp1 - 只將 %1 擴展到驅動器號和路徑
%~nx1 - 只將 %1 擴展到文件名和擴展名
%~dp$PATH:1 - 在列在 PATH 環(huán)境變量中的目錄里查找 %1,
并擴展到找到的第一個文件的驅動器號和路徑。
%~ftza1 - 將 %1 擴展到類似 DIR 的輸出行。
在上面的例子中,%1 和 PATH 可以被其他有效數值替換。
%~ 語法被一個有效參數號碼終止。%~ 修定符不能跟 %*
使用

TA貢獻1845條經驗 獲得超8個贊
Call語句調用另一個(子)程序,并等待其執(zhí)行后返回正確或錯誤結果.
返回的位置是Call語句的末尾.
Start語句調用另一個(子)程序,但是不需返回.
請比較:
call attrib -h -r c:\auto.bat
start attrib -h -r c:\auto.bat
或:
call attrib -h -r c:\autoexec.bat
start attrib -h -r c:\autoexec.bat
- 2 回答
- 0 關注
- 885 瀏覽
添加回答
舉報