Windows:從命令列遞歸搜尋並執行批次文件

Windows:從命令列遞歸搜尋並執行批次文件

我有一個帶有嵌套資料夾的項目。

我希望能夠遞歸查找目錄,直到找到“build.bat”檔案並執行它。

我如何從命令列執行此操作? (即本身不是批次檔)。

背景(可選):嘗試利用 vim 的編譯器和 makeprg 設定來運行位於專案中某處的建置文件,並將輸出重定向到快速提示。

答案1

假設一個特定的專案根資料夾是d:\Remote並且它是您當前的工作目錄。然後(從我的命令提示字元視窗複製並貼上):

d:\Remote>for /F "delims=" %G in ('dir /b /s build.bat') do @echo "%~G"
"d:\Remote\bat\test\build.bat"

然後你可以簡單地刪除@echo...

如果您在另一個工作目錄中:

d:\bat>for /F "delims=" %G in ('dir /b /s "d:\Remote\build.bat"') do @echo "%~G"
"d:\Remote\bat\test\build.bat"

筆記可能會找到多個文件;如果@echo刪除,那麼所有找到的都將被執行:

d:\Remote>for /F "delims=" %G in ('dir /b /s cdn.bat') do @echo "%~G"
"d:\Remote\bat\cdn.bat"
"d:\Remote\bat\test\cdn.bat"

資源(必讀):

相關內容