我正在使用批处理脚本来自动构建Qt项目。
我遇到的一个问题是Qt的安装目录路径可能与每个用户不同。
例如,在我的系统上,我的mingw48_32的路径是: C:\ Qt的\ Qt5.2.0 \ 5.2.0 \ mingw48_32 但是在别人的系统上它可能是 c:\ Qt \ 5.2.0 \ mingw48_32取决于他们如何选择设置它。
所以当我指定qmake.exe的路径时,我需要知道qmake.exe的路径是。
如何搜索文件,并从批处理脚本中复制其路径?
答案 0 :(得分:0)
whence.bat
不是真的喜欢真实的,但它可能会有所帮助。
@SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
@SET EXITCODE=1
:: Needs an argument.
@IF "x%1"=="x" (
@ECHO Usage: %0 ^<progName^>
GOTO TheEnd
)
@set newline=^
@REM Previous two (2) blank lines are required. Do not change!
@REM Ensure that the current working directory is first
@REM because that is where DOS looks first.
@PATH=.;!PATH!
@FOR /F "tokens=*" %%i in ("%PATH:;=!newline!%") DO @(
@IF EXIST %%i\%1 (
@ECHO %%i\%1
@SET EXITCODE=0
)
@FOR /F "tokens=*" %%x in ("%PATHEXT:;=!newline!%") DO @(
@IF EXIST %%i\%1%%x (
@ECHO %%i\%1%%x
@SET EXITCODE=0
)
)
)
:TheEnd
@EXIT /B %EXITCODE%