[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[注册表类] 批处理怎么在PATH变量中添加2个带有环境变量的地址

  1. ::将路径存到CSP_HOME
  2. if not  "%OS%"=="Windows_NT" exit
  3. title WindosActive
  4. cd /D %~dp0
  5. cd ..
  6. set CSP_HOME=%cd%
  7. set remain=%path%
  8. set findedtools=false
  9. set findedbin=false
  10. ::创建CSP_HOME环境变量
  11. set path_tools=%CSP_HOME%\tools
  12. set path_bin=%CSP_HOME%\bin
  13. setx /m CSP_HOME "%CSP_HOME%"
  14. ::查找环境变量中PATH的值是否已经设置,如果没有设置才设置、
  15. :search1
  16. for /f "tokens=1,2* delims= " %%a in ("%remain%") do (
  17. if "%path_tools%"=="%%a" (
  18. set findedtools=true
  19. )
  20. if "%path_bin%"=="%%a" (
  21. set findedbin=true
  22. )
  23. set remain=%%b
  24. )
  25. if defined remain
  26. goto  :search1
  27. if "%findedtools%"=="false" (
  28. if "%findedbin%"=="false" (
  29. setx /m PATH "%path%;%path_tools%;%path_bin%"
  30. ) else (
  31. setx /m PATH "%path%;%path_tools%"
  32. )
  33. )
  34. if "%findedbin%"=="true" (
  35. if "%findedtools%"=="false"(
  36. setx /m PATH "%path%;%path_bin%"
  37. )
  38. )
复制代码

  1. ::查找环境变量中PATH的值是否已经设置,如果没有设置才设置、
  2. :search1
  3. for /f "tokens=1,2* delims=;" %%a in ("%remain%") do (
  4. if "%path_tools%"=="%%a" (
  5. set findedtools=true
  6. )
  7. if "%path_bin%"=="%%a" (
  8. set findedbin=true
  9. )
  10. set remain=%%b
  11. )
  12. if defined remain
  13. goto  :search1
复制代码
%path%分隔符是;
微信:flashercs
QQ:49908356

TOP

回复 3# hfxiang


    没有什么变化

TOP

把如下指令以ANSI编码保存为bat文件,然后运行,看看前后什么变化
  1. @set path
  2. @echo;
  3. @echo;%path%|find.exe /i "%~dp0;">nul 2>&1 || path %~dp0;%path%
  4. @echo;
  5. @set path
复制代码

TOP

回复 1# xin_chen


    大佬们,求助一下,为什么代码中的CSP_HOME可以设置,但是path_tools和path_bin却设置不了

TOP

返回列表