标题: [文本处理] 【已解决】批处理for命令"delims=a"识别不到第一行的‘a’ [打印本页]
作者: 菊花的忧伤 时间: 2024-5-29 11:39 标题: 【已解决】批处理for命令"delims=a"识别不到第一行的‘a’
本帖最后由 菊花的忧伤 于 2024-5-29 14:04 编辑
代码如下:- @echo off
-
- for /f "delims=a" %%i in (./test.txt) do echo %%i&&pause
- pause
复制代码
文本类容:
aabcdeg bcdefga abcdeg
bcdefga bcdefga abcdeg
abcdef bcdefga abcdeg
ehjkhfjg abcdeg
sdjagsjp abcdeg
结果如下:
bcdeg bcdefg
请按任意键继续. . .
bcdefg
请按任意键继续. . .
bcdef bcdefg
请按任意键继续. . .
ehjkhfjg
请按任意键继续. . .
sdj
请按任意键继续. . .
作者: Batcher 时间: 2024-5-29 11:44
回复 1# 菊花的忧伤
以顶楼数据为例,你希望得到的结果是怎样的?
作者: 菊花的忧伤 时间: 2024-5-29 12:11
回复 2# Batcher
不应该第一行,第一个a识别到了,后面的就bei裁掉了吗
为什么第一行前面已经有两个a了,后面还会显示出来
作者: newswan 时间: 2024-5-29 12:31
本帖最后由 newswan 于 2024-5-29 12:45 编辑
你理解的常识,awk 是这样的,但是 for 不是这样的- for /f "tokens=1-2 delims=," %a in ( "a,b,c" ) do echo %a
- for /f "tokens=1-2 delims=," %a in ( ",a,b,c" ) do echo %a
复制代码
作者: Batcher 时间: 2024-5-29 12:38
回复 3# 菊花的忧伤
for命令在tokens缺省的情况下是获取第1列
aabcdeg bcdefga abcdeg
作者: 菊花的忧伤 时间: 2024-5-29 13:56
回复 5# Batcher
你的意思是没有tokens的条件下,他会默认取一段有效的数据,如果第一段数据为空,他会依次向后移动吗选取吗
作者: 菊花的忧伤 时间: 2024-5-29 14:03
回复 5# Batcher
我试了一下,我理解错了delims的意思了 ,我以为前面的空算第一段,已经懂了,谢谢大佬
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |