标题: [文件操作] [已解决]批处理中dir/b配合for得到错误的路径? [打印本页]
作者: zhouyongjun 时间: 2009-4-22 15:57 标题: [已解决]批处理中dir/b配合for得到错误的路径?
请各位帮忙看看:
C:\TEST
│ 1.txt
│ 2.txt
│ 5
│
└─3
4.txt
测试批处理:D:\学习\test.bat
测试一:- @echo off
- for /f "delims=" %%i in ('dir/b "c:\test\*"') do echo %%~fi
- pause
复制代码
结果为:
D:\学习\1.txt
D:\学习\2.txt
D:\学习\3
D:\学习\5
请按任意键继续. . .
测试二:- @echo off
- for /f "delims=" %%i in ('dir/s/b "c:\test\*"') do echo %%i
- pause
复制代码
结果为:
c:\test\1.txt
c:\test\2.txt
c:\test\3
c:\test\5
c:\test\3\4.txt
请按任意键继续. . .
我在论坛中搜索dir没有搜到相应问题,前者就是少了/s参数,结果就不对了,我百思不得其解啊。
[ 本帖最后由 zhouyongjun 于 2009-4-22 19:39 编辑 ]
作者: 随风 时间: 2009-4-22 16:48
%%~fi 扩展的是 变量 %%i 的路径,第一例中因为 %%i 的值没有路径,所以for就把自身的路径加了进去,你的批处理所在路径应该是D:\学习吧。
作者: zhouyongjun 时间: 2009-4-22 17:54
哦,明白了,谢谢,一时脑壳短路。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |