- @echo off
- set pa=%PATH%
- :a
- for /f "tokens=1,* delims=;" %%i in ("%pa%") do (
- set pa=%%j
- set str=%%j
- :b
- for /f "tokens=1,* delims=;" %%a in ("%str%") do (
- if "%%i"=="%%a" echo "有相同的字符"
- set str=%%b
- if defined str (goto :b)
- )
- if defined pa (goto :a)
- )
- pause
复制代码 我想写 查询自己的 环境变量中有没有重复的。就在新的环境变量中删除一个重复的,但写到判断有没有重的的项时遇到了问题
1.发现 set str=%%j 时 str显示为空的。没有赋值成功
2.不知道 为什么 第二个for循环中 "%%i"=="%%a" 为什么总是相等的。
3.不知道我这样写是不是逻辑有错误。
4.后面如何替换有思路点不清i淅,能否给个思路。 |