中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-05 03:09
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于逗号区切和循环. 查看 761 回复 9
楼 主 关于逗号区切和循环. 发表于 2007-06-19 22:33 ·  日本 东京都 KDDI通信公司
新手上路
积分 6
发帖 2
注册 2007-06-19 22:09
19年会员
UID 91838
性别 男
状态 离线
1122,33
4455,66
7788,99
文件的内容如上格式,我想循环三次,每次能分别取逗号分开的两边,各组用回车换行分开的,关键是逗号区切有什么好的方法,谢谢!
2 发表于 2007-06-19 22:47 ·  中国 浙江 杭州 联通
银牌会员
★★★
积分 1,928
发帖 931
注册 2007-01-06 11:46
19年会员
UID 75624
性别 男
状态 离线
for /f "tokens=1,2 delims=," %%i in (1.txt)

类似自己加
3 发表于 2007-06-19 23:38 ·  日本 东京都 KDDI通信公司
新手上路
积分 6
发帖 2
注册 2007-06-19 22:09
19年会员
UID 91838
性别 男
状态 离线
我怎么取第一部分,取第二部分.
4 发表于 2007-06-20 00:16 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
for /f "delims=, tokens=1,2" %%a in (urfile.ext) do echo\%%a %%b


[ Last edited by lxmxn on 2007-6-20 at 12:18 AM ]
5 发表于 2007-06-20 10:58 ·  日本
初级用户
积分 26
发帖 10
注册 2007-06-11 10:54
19年会员
UID 90943
性别 男
状态 离线
谢谢!再请问一个问题,取得调用我脚本的参数的总数用什么参数。
6 发表于 2007-06-20 12:33 ·  中国 北京 海淀区 联通
银牌会员
★★★
天的白色影子
积分 2,343
发帖 636
注册 2004-03-06 00:00
22年会员
UID 19350
性别 男
状态 离线
没有这个参数

自己编个计数循环

或者根本不用这个参数

通常这个参数是用于参数遍历的

不用它也可以通常检测参数是否为空来判断

当然,这些都少不了shift命令
7 发表于 2007-06-21 16:29 ·  日本
初级用户
积分 26
发帖 10
注册 2007-06-11 10:54
19年会员
UID 90943
性别 男
状态 离线
1122,33,AAA,CCC
上面可以用%%a %%b取1,2,假使现在有4列,我用%%c,%%d取不取,不太明白。
8 发表于 2007-06-21 16:32 ·  中国 河北 石家庄 北京神州长城通信技术发展中心中国长城互联网
初级用户
★★
积分 152
发帖 75
注册 2007-02-06 22:09
19年会员
UID 78805
性别 男
状态 离线
Originally posted by maomaoguai at 2007-6-21 04:29 PM:
1122,33,AAA,CCC
上面可以用%%a %%b取1,2,假使现在有4列,我用%%c,%%d取不取,不太明白。

是的。
9 发表于 2007-06-21 16:38 ·  日本
初级用户
积分 26
发帖 10
注册 2007-06-11 10:54
19年会员
UID 90943
性别 男
状态 离线
ok
10 发表于 2007-06-21 16:56 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
如果一个文件的字段太长的话,建议用gawk或者for命令的嵌套来完成。
论坛跳转: