在for里面的东西找到了
| 另外,FOR 变量参照的替换已被增强。您现在可以使用下列 | | 选项语法: | | | | ~I - 删除任何引号("),扩充 %I | | %~fI - 将 %I 扩充到一个完全合格的路径名 | | %~dI - 仅将 %I 扩充到一个驱动器号 | | %~pI - 仅将 %I 扩充到一个路径 | | %~nI - 仅将 %I 扩充到一个文件名 | | %~xI - 仅将 %I 扩充到一个文件扩展名 | | %~sI - 扩充的路径只含有短名 | | %~aI - 将 %I 扩充到文件的文件属性 | | %~tI - 将 %I 扩充到文件的日期/时间 | | %~zI - 将 %I 扩充到文件的大小 | | %~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充 | | 到找到的第一个完全合格的名称。如果环境变量名 | | 未被定义,或者没有找到文件,此组合键会扩充到 | | 空字符串 | | | | 可以组合修饰符来得到多重结果: | | | | %~dpI - 仅将 %I 扩充到一个驱动器号和路径 | | %~nxI - 仅将 %I 扩充到一个文件名和扩展名 | | %~fsI - 仅将 %I 扩充到一个带有短名的完整路径名 | | %~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充 | | 到找到的第一个驱动器号和路径。 | | %~ftzaI - 将 %I 扩充到类似输出线路的 DIR | | | | 在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法 | | 用一个有效的 FOR 变量名终止。选取类似 %I 的大写变量名 | | 比较易读,而且避免与不分大小写的组合键混淆。COPY |
下面是我的测试代码
1.txt的内容为
fjikgfdg[df].bat
dfdfsd[fdf].batl
我的测试代码 | @echo off | | setlocal enabledelayedexpansion | | for /f "tokens=1* delims=[" %%a in (1.txt) do (set var1="%%~xb" | | echo %%a & echo %%b & echo !var1! | | ) | | pauseCOPY |
结果为: | fjikgfdg[df] | | fjikgfdg[df] | | bat | | "" | | dfdfsd[fdf] | | dfdfsd[fdf] | | batlCOPY |
哈哈
这个的意思也就是把后面格式为****.*的格式为.*的取出来,不管前面的为什么内容
呵呵
这个用法就大概知道了 |