1. call用法
1.1. 用法一
從批處理程序調用另一個批處理程序。
Rem CALL [drive:][path]filename [batch-parameters]
Rem 1和3是batch parameters,即命令行參數
call f:\test.bat 1 3
1.2. 用法二
將卷標當作調用的目標接受。
1.2.1. 源碼
rem CALL:label arguments
rem form snow.txt文件不存在,f:\test.txt存在,java.exe是java環境下的文件
call :Exit "from snow.txt" f:\test.txt java.exe
echo test
:Exit
echo 當前批處理路徑: %~f0
echo 第一個命令行參數: %1
echo 第一個命令行參數刪除引號: %~1
echo 第二個命令行參數: %2
rem 如果是相對路徑,自動補全當前路徑;如果是全路徑則不作處理
echo 第一個命令行參數擴展到完整路徑: %~f1
echo 第二個命令行參數擴展到完整路徑: %~f2
rem 如果是相對路徑,則取當前路徑的驅動器號;如果是全路徑則取其驅動器號
echo 第一個命令行參數取其驅動器號: %~d1
echo 第二個命令行參數取其驅動器號: %~d2
echo 第一個命令行參數取其路徑: %~p1
echo 第二個命令行參數取其路徑: %~p2
echo 第一個命令行參數取其文件名: %~n1
echo 第二個命令行參數取其文件名: %~n2
echo 第一個命令行參數取其擴展名: %~x1
echo 第二個命令行參數取其擴展名: %~x2
echo 第一個命令行參數取其短名: %~s1
echo 第二個命令行參數取其短名: %~s2
echo 第一個命令行參數取其屬性: %~a1
echo 第二個命令行參數取其屬性: %~a2
echo 第一個命令行參數取其時間: %~t1
echo 第二個命令行參數取其時間: %~t2
echo 第一個命令行參數取其大小: %~z1
echo 第二個命令行參數取其大小: %~z2
rem 查找指定命令行參數文件在所有環境變量文件中是否存在,如果存在就將文件路徑補全
rem 如果不存在則顯示當前參數,如果當前參數文件也不存在則顯示爲空
echo 結果: %~$PATH:1
echo 結果: %~$PATH:2
echo 結果: %~$PATH:3
rem 可以組合修改符來取得多重結果
echo 組合命令行參數1當前盤符與路徑: %~dp1
echo 組合命令行參數2當前盤符與路徑: %~dp2
echo 組合命令行參數1當前文件名與後綴名: %~nx1
echo 組合命令行參數2當前文件名與後綴名: %~nx2
echo 組合命令行參數1當前文件屬性時間大小文件名: %~ftza1
echo 組合命令行參數2當前文件屬性時間大小文件名: %~ftza2
1.2.2. 輸出結果
當前批處理路徑: F:\test.bat
第一個命令行參數: "form snow.txt"
第一個命令行參數刪除引號: form snow.txt
第二個命令行參數: f:\test.txt
第一個命令行參數擴展到完整路徑: C:\Program Files\Notepad++\form snow.txt
第二個命令行參數擴展到完整路徑: f:\test.txt
第一個命令行參數取其驅動器號: C:
第二個命令行參數取其驅動器號: f:
第一個命令行參數取其路徑: \Program Files\Notepad++\
第二個命令行參數取其路徑: \
第一個命令行參數取其文件名: form snow
第二個命令行參數取其文件名: test
第一個命令行參數取其擴展名: .txt
第二個命令行參數取其擴展名: .txt
第一個命令行參數取其短名: C:\PROGRA~1\NOTEPA~1\form snow.txt
第二個命令行參數取其短名: f:\test.txt
第一個命令行參數取其屬性:
第二個命令行參數取其屬性: --a------
第一個命令行參數取其時間:
第二個命令行參數取其時間: 2019/04/19 21:55
第一個命令行參數取其大小:
第二個命令行參數取其大小: 1704
結果:
結果: f:\test.txt
結果: C:\ProgramData\Oracle\Java\javapath\java.exe
組合命令行參數1當前盤符與路徑: C:\Program Files\Notepad++\
組合命令行參數2當前盤符與路徑: f:\
組合命令行參數1當前文件名與後綴名: form snow.txt
組合命令行參數2當前文件名與後綴名: test.txt
組合命令行參數1當前文件屬性時間大小文件名: C:\Program Files\Notepad++\form snow.txt
組合命令行參數2當前文件屬性時間大小文件名: --a------ 2019/04/19 21:55 1704 f:\test.txt