tokens=1,2,4,5,6... ,意思就是从user.csv文件中的取第1列、2列、4列、5列、6列... delims=, 意思就是“,”为分隔符; %a 就是以user.csv文件中的第1列为循环变量; do 要执行的@echo %a %b %c %d %e %f (Do 语句的内容), %a就表示第一列,%b就表示第二列,一直往后推... 举例如下...
for /f "tokens=1,2,3,4,5,6 delims=," %a in (user.csv) do @echo %a %b %c %d 谁帮我翻译下这个语句
首先,最好把delims=,放在参数列的最后面,不然多个空格,系统会认为空格也是delims。再有你要想要5节以后的剩余显示,在“tokens”最后面要加上一“*”,最后再加一个变量 代码改为 for /f "tokens=1,3-4,* delims=,*" %i in (test.txt) do echo %i %j%k %l >> result.txt 这样就...
for /f "tokens=5 delims= " %%a in (1.txt) do ( echo %%a ) :: 第二个例子: :: when .the. first. i .saw .you,i was for /f "tokens=6 delims=., " %%a in (1.txt) do ( echo %%a ) :: 第三个例子: :: 1 2 3 4 5 6 7 8 9 10 @ec...
for /f 后的引号及内容去掉就可以了,即去掉"tokens=1-4 delims=/ " 这样就默认取的日期里第一个空格之前内容,如果希望取值里的/符换为-则在下方再插入一行set date=%date:/=- 另外建议这里的自定义变量date最好换个名为好,它本属系统的日期变量如果一直在当前cmd运行可能有影响。
我的办法不一定好,是先把这行读出来,在两个连续的逗号之间插个空格,再用另外一个for来读……空数据会被读成空格。echo off setlocal enableextensions enabledelayedexpansion for /f %%i in (1.txt) do (set f=%%i set f=!f:,,=, ,!for /f "usebackq tokens=3 delims=," %%j in (...
这是批处理的局限性,多个分隔符连在一起相当于一个,你究竟要实现啥功能?具体些!a,b,,,e 不是和原来一样吗?如果需要替换分隔符","为“.”,可以:echo offSetlocal Enabledelayedexpansionfor /f "tokens=* delims=" %%a in (qq.dat) do (set var=%%a@echo !var:,=.!>>test.log)
批处理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 。⾏⾸有若⼲空格。看到有什么...
在"user.csv"这个文件里面,每行都以“,”为分隔符,形成1、2、3、4、5、6...列。 tokens=1,2,4,5,6... ,意思就是从user.csv文件中的取第1列、2列、4列、5列、6列... delims=, 意思就是“,”为分隔符; %a 就是以user.csv文件中的第1列为循环变量; ...
解析 在"user.csv"这个文件里面,每行都以“,”为分隔符,形成1、2、3、4、5、6...列,并输出前面4列(@echo %a %b %c %d ).这样每行都输出前面4列.例如"user.csv"的内容是:1,2,3,4,5,6,7,80,0,1,1,3,3,32,2,3,3,4,4,4,4,4......