批处理delims=和tokens=星号 的使用差别
(编辑:jimmy 日期: 2024/11/16 浏览:3 次 )
比较以下两段代码的执行结果差异:
1、
@echo off
for /f "delims=" %%i in (test.txt) do echo /%%i/
pause
2、
@echo off
for /f "tokens=*" %%i in (test.txt) do echo /%%i/
pause
test.txt 的内容为: abc 。行首有若干空格。
看到有什么差别了吗?
原因:"delims=" 的含义是取消默认的分隔符,所以会把行上的内容照搬下来,而 "tokens=*" 表示获取行上的所有内容,但是会忽略行首的所有空格。
1、
@echo off
for /f "delims=" %%i in (test.txt) do echo /%%i/
pause
2、
@echo off
for /f "tokens=*" %%i in (test.txt) do echo /%%i/
pause
test.txt 的内容为: abc 。行首有若干空格。
看到有什么差别了吗?
原因:"delims=" 的含义是取消默认的分隔符,所以会把行上的内容照搬下来,而 "tokens=*" 表示获取行上的所有内容,但是会忽略行首的所有空格。
下一篇:CMD CODE PAGE的概念及其设置值使用方法