1 @echo off
 2 setlocal enabledelayedexpansion 
 3 
 4 ::使用方法:
 5 :: "C:\WINDOWS"
 6 :: "C:\jar"
 7 SET x="C:\jar"
 8 Call :InPath %x%
 9 goto :eof
10 
11 
12 :InPath
13 SET LocalPathCopy=%PATH%
14 :: whether exist %x%
15 IF "%LocalPathCopy%" == "" GOTO OVER
16 GOTO WHILE
17 
18 :: iterate path variable and check if the first parameter of InPath exists
19 :WHILE
20 FOR /f "delims=; tokens=1,*" %%I IN ("%LocalPathCopy%") DO (
21   set LocalPathCopy=%%J
22   ::echo "%%~I" == "%1" --------- "%LocalPathCopy%"
23   IF /I "%%~I" == %1 (
24     SET Result=1
25     SET x=%%~I
26     echo %x% exists
27     GOTO OVER
28   )
29   GOTO WHILE
30 )
31 
32 :: remove "
33 SET x=%x:"=%
34 
35 IF "!Result!" == "" (
36     echo "%x%" dont exists so we'll add it to path
37     :: you can use SETX command correctly if it exists 
38     :: because the max length of your environment variable cant be great than 1024
39     :: SETX PATH "%Path%;%x%"
40     SET "Path=%Path%;%x%"
41     echo !PATH!
42     GOTO OVER
43 )
44 
45 pause.
46 
47 :OVER
48 PAUSE & GOTO :EOF

 

相关文章:

  • 2022-01-03
  • 2021-11-18
  • 2021-11-28
  • 2022-02-09
  • 2021-08-16
  • 2022-03-03
猜你喜欢
  • 2021-10-22
  • 2021-12-15
  • 2022-12-23
  • 2022-12-23
  • 2022-01-25
  • 2022-01-09
  • 2021-06-20
相关资源
相似解决方案