脚本专栏 
首页 > 脚本专栏 > 浏览文章

BAT批处理判断目录在%Path%中实现方法

(编辑:jimmy 日期: 2024/5/20 浏览:3 次 )

貌似没有很优美的做法,只能把%Path%按分号分割,然后一段一段地比较。

:InPath [In]Path [Out]0/1
SETLOCAL
SET LocalPathCopy=%PATH%
SET Result=0
:WHILE
IF "%LocalPathCopy" == "" GOTO WEND
FOR /F "delims=;" %%I IN ("%LocalPathCopy%") DO (
  IF /I "%%~I" == "%~1" (
    SET Result=1
    GOTO WEND
  )
)
FOR /F "delims=; tokens=1,*" %%I IN ("%LocalPathCopy%") DO (
  SET LocalPathCopy=%%~J
)
GOTO WHILE
 
:WEND
 
:InPathRet
ENDLOCAL & SET %2=%Result% & GOTO :EOF

使用方法:

SET x=C:\Windows
Call :InPath %x% Result
IF %Result% == 0 SET Path=%Path%;%x%
上一篇:使用批处理按要求批量删除文件夹方法汇总
下一篇:Windows下bat批处理脚本使用telnet批量检测远程端口小记
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网