|
关于这段代码
:fsutil
for /f "tokens=*" %%a in ('fsutil fsinfo drives') do set str=%%a
:lp
for /f "tokens=1,*" %%i in ("%str%") do (
set str2=%%i
set str2=!str2:~-3!
if !str2! equ %%i set ALLDRV=%ALLDRV% %%i
set str=%%j
goto lp
)
goto :eof
我发现 fsutil 这个小工具的输出信息,不同版本是不同的
在win7里,其实这样子就可以获得 ALLDRV 了
:fsutil
for /f "tokens=1,*" %%a in ('fsutil fsinfo drives') do set ALLDRV=%%b
goto :eof
可是在pe1.x里,我只在tangope里测试过,这样的代码得到的是第一个盘符,一般是 C:\
也就是说,fsutil的输出文字,盘符后面不是空格,而是一个特殊字符,我估计是eof 或者换行符
用原来的代码得到的一样是第一个盘符
结果就悲剧了
[ 本帖最后由 NicTense 于 2011-2-10 00:57 编辑 ] |
|