我正在批處理文件的樂趣,我遇到了一個問題。我尋找解決方案,我沒有找到任何人。找到tool.exe通過搜索功能,然後執行它
我喜歡對我的批處理文件進行編碼,因此它會搜索我的c:驅動器上的特定文件,並在它找到我希望它執行的路徑位置之後。可以做到嗎?
我不知道我是否可以合併我從「dir tool.exe/s/p」得到的路徑。
我正在批處理文件的樂趣,我遇到了一個問題。我尋找解決方案,我沒有找到任何人。找到tool.exe通過搜索功能,然後執行它
我喜歡對我的批處理文件進行編碼,因此它會搜索我的c:驅動器上的特定文件,並在它找到我希望它執行的路徑位置之後。可以做到嗎?
我不知道我是否可以合併我從「dir tool.exe/s/p」得到的路徑。
使用批處理
for /f %%i in ('dir C:\tool.exe /s /b') do (
start %%~fi
exit /b
)
考慮的是,如果你的可執行文件位於深下的文件夾樹將需要一段時間才能真正找到它並運行。所以如果你想提高性能,你可以縮小搜索範圍,當然這是一個選項。
試試這個:
for /f "delims=" %%A in ('dir tool.exe /s /p') do set "var=%%A"
start %var%
「的輸出目錄tool.exe/S/P」被保存在var中,你可以再使用做任何你需要做的。
我知道你要的批次,但在這裏是作爲一個PowerShell的選擇,因爲我很無聊:
Get-ChildItem/-Recurse -File | % { if($_.Name -eq "notepad.exe") { &$_.FullName; break} }
它將執行先打上搜索「Notepad.exe的」,然後退出腳本。