批处理 for

来源:百度知道 编辑:UC知道 时间:2024/06/01 03:44:45
1.t.bat的内容如下:
@echo off
for /f %%a in ('dir /b d:\test') do (
echo %%~xa
echo %%a
)
pause
2.d:\temp下两个文件:
my.txt;
my book.txt
3.执行t.bat后结果如附图

问题:为什么for变量不能含有空格呢?其实我是想用%~xi的方式得到某些文件夹下面的文件的扩展名,可是针对那些含有空格好像不起作用啊!请高手指点,万分感谢!

@echo off
for /f "delmis=" %%a in ('dir /b d:\test') do (
echo %%~xa
echo %%a
)
pause
这样就可以有空格了,因为如果你省略了"delims="就默认为分隔符号是空格,所以取不到全名。
建议你在运行里输入cmd /k for/? 看看用法!

@echo off
for /f "delims=" %%a in ('dir /b d:\test') do (
echo %%~xa
echo %%a
)
pause

他拼错了,寒