中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-18 19:45
47,814 主题排行 / 349,908 发帖 / 今日 1 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » DOS下有没有截取字段的命令
可打印版本  2,250 / 16
第1楼 paulhybryant 发表于 2007-04-28 01:49
初级用户 发帖 16 积分 31
DOS下有没有截取字段的命令
如题,例如一个文件的一行是以空格,:,或者tab这样的字符分隔,可否将他们截取出来?

123:456:789
123 456 789
可以把123, 456,按照自己的要求截取出来?
第2楼 lxmxn 发表于 2007-04-28 01:59
版主 发帖 4,938 积分 11,386
可以,用for /f可以截取你想要的,搜索一下吧,很多讨论了。
第3楼 paulhybryant 发表于 2007-04-28 02:13
初级用户 发帖 16 积分 31
好的,谢谢斑竹
第4楼 paulhybryant 发表于 2007-04-28 12:42
初级用户 发帖 16 积分 31
还有一个问题没有找到,就是要是在字段数量不一定的情况下,该怎么写啊?
第5楼 lxmxn 发表于 2007-04-28 12:58
版主 发帖 4,938 积分 11,386
字段数量不一定,就要根据情况来使用变量的字符截取功能了,或者结合for命令来解决。
第6楼 lianjiang2004 发表于 2007-04-28 20:25
金牌会员 发帖 1,884 积分 3,946
Originally posted by lxmxn at 2007-4-28 01:59:
可以,用for /f可以截取你想要的,搜索一下吧,很多讨论了。

版主,dos下有for/ f吗?是CMD下吧?
有的话,就太方便了。
第7楼 lxmxn 发表于 2007-04-29 02:56
版主 发帖 4,938 积分 11,386
Re lianjiang2004:

呵呵,我说的就是在CMD下面,也不知道DOS下面有没有,没有安装DOS。o_O
第8楼 paulhybryant 发表于 2007-04-30 00:24
初级用户 发帖 16 积分 31
再问一个问题,我向在循环中计数,但是一下的代码不行
@echo off
set it=0
for /L %%i in (1,1,5) do (
set /a it=it+1
echo %it%
)
回到命令行后用echo查看变量是变了的,但是输出却都是0,请问这是什么问题。我是想在不用/L和%%i的情况下计数,所以不用echo %%i
第9楼 lxmxn 发表于 2007-04-30 00:59
版主 发帖 4,938 积分 11,386
搜索一下“变量延迟” or “SetLocal”。
第10楼 paulhybryant 发表于 2007-05-01 11:07
初级用户 发帖 16 积分 31
谢谢版主,已经弄清楚了,还有一个问题,我最近编一个批处理的时候,要用一个程序过滤dir的输出,可是我发现用管道竟然比先把dir的结果写入一个文件,在用过滤程序过滤这个文件要慢,个人觉得管道应该更加快才是啊,不知道是什么原因呢?谢谢版主这几次的帮助
第11楼 paulhybryant 发表于 2007-05-01 11:12
初级用户 发帖 16 积分 31
还有,我想知道自己的脚本的大概执行时间,不知道应该如何计算?
第12楼 paulhybryant 发表于 2007-05-01 12:27
初级用户 发帖 16 积分 31
用echo如何输出像tab,backspace这样的特殊字符啊?
第13楼 lxmxn 发表于 2007-05-01 22:56
版主 发帖 4,938 积分 11,386
Re paulhybryant:

1、用dir过滤之后再写入文件要比写入文件之后再过滤慢了,dir每输出一行就过滤一次,而用文件过滤,一次性把内容放在系统缓冲区,再来一起过滤,流程不一样,处理的速度自然不一样了;

2、计算脚本你运行时间,可以在脚本前后分别加上一句 echo %time% ,再来比较它们的差值;

3、输出tab或者backspace,可以这样:echo\[tab] 、echo\[backspace]。
第14楼 paulhybryant 发表于 2007-05-02 20:45
初级用户 发帖 16 积分 31
谢谢斑竹,我用echo\[tab],输出的是[tab],不是制表符啊,请问是我那里搞错了?
第15楼 paulhybryant 发表于 2007-05-02 22:43
初级用户 发帖 16 积分 31
如果我想输出一个字符,包括特殊字符在内,入\r,\n这些,能够用制定ascii的方式输出么?不好意思,问了这么多,谢谢斑竹了
1 2  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023