淺談如何在bat文件中調用另一個bat文件

情景一:兩個bat文件在同一個目錄下

有時候我們需要在一個bat文件中調用另一個bat文件,比如我們想在a.bat中調用b.bat,如下。

a.bat

@echo off
echo I am a.bat…
echo now run the b.bat
call b.bat
echo over

b.bat

@echo off
echo I am b.bat…

在cmd窗口中執行a.bat,結果如下:

I am a.bat…
now run the b.bat
I am b.bat…
over

通過call命令,我們可以調用另一個bat文件,執行完會再返回到原本的bat文件中繼續執行。但是這裡有個問題,就是兩個bat文件必須在同一個目錄下,否則會找不到要call的bat文件。

情景二:兩個bat文件不在同一個目錄下

假如要call的bat文件在其他目錄,我們可以在call之前,先使用cd /d 目錄來進入相應的目錄,接著再call就行瞭,如下:

a.bat

@echo off
echo I am a.bat…
echo now run the b.bat
cd /d D:\test
call b.bat
echo over

b.bat

@echo off
echo I am b.bat…

執行後得到結果如下:

I am a.bat…
now run the b.bat
I am b.bat…
over

不過,這裡需要註意的是,此時執行完命令的cmd窗口的當前目錄是b.bat所在的目錄瞭,而不是a.bat的目錄。

情景三:開啟一個新的cmd窗口來運行另一個bat文件

假如我們希望另外啟動一個新的cmd窗口來運行b.bat,可以通過start cmd命令來實現,如下:

a.bat

@echo off
echo I am a.bat…
echo now run the b.bat
cd /d D:\test
start “” cmd /k call b.bat
echo over

b.bat

@echo off
echo I am b.bat…

執行後得到結果如下:

原本的cmd窗口中:

I am a.bat…
now run the b.bat
over

新的cmd窗口中:

I am b.bat…

這裡簡單解釋下該命令的參數:

start “” cmd /k call b.bat
“”是一段字符串,代表新打開的cmd窗口的名字,可以隨便起名。
/k是表示新打開的cmd窗口在執行完命令後保存打開狀態,如果希望執行完就關閉窗口就使用/c
call b.bat表示call命令,即調用b.bat文件;該命令可以用”“括起來,即:”call b.bat”

到此這篇關於淺談如何在bat文件中調用另一個bat文件的文章就介紹到這瞭,更多相關bat調用另一個bat文件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: