中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-25 01:23
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何循环输入不同的内容 查看 814 回复 7
楼 主 如何循环输入不同的内容 发表于 2007-02-01 17:36 ·  中国 重庆 沙坪坝区 联通
新手上路
积分 16
发帖 7
注册 2006-12-29 18:25
19年会员
UID 74940
性别 男
状态 离线
我需要循环运行一个程序(该程序是以dos窗口运行的,并且需要输入数据),比如该程序名称为drain.exe,第一次运行drain,输入数据js1,程序运行一段时间再输入另一个参数N;结束后,第二次运行drain再输入数据js2,程序运行一段时间再输入另一个参数N;......一直运行100次。这样的批处理命令该怎么写?谢谢高手指点!
在dos下输入如下:
drain<回车>
js1<回车>(程序运行大概2s)
N<回车>(程序运行大概8s,完成第一个循环)
drain<回车>(第二循环开始)
js2<回车>
N<回车>
......
其中drain是主程序,js1以及N都是程序drain运行所需输入的命令(或者参数)。
请高手帮忙。不知道我讲清楚我的意思没有。
另:在程序drain之下输入第一个数据之后还要运行大概3s时间,才会提示输入下一个数据c,然后程序运行大概15s就完成一个循环。


──────────────── 版务记录 ────────────────
执行:namejm
原标题:遇到棘手的批处理问题,请高手指点!急。
修改后标题:如何循环输入不同的内容
说明:因标题表述过于模糊,不便于论坛的搜索和管理,在本提示发表三日后,楼主
  仍未修改标题。现由本人强制修改标题,并扣除楼主2点积分。
──────────────── 版务记录 ────────────────


[ Last edited by namejm on 2007-2-6 at 09:14 AM ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
namejm -2 2007-02-06 22:16
2 发表于 2007-02-02 02:08 ·  中国 重庆 联通
新手上路
积分 16
发帖 7
注册 2006-12-29 18:25
19年会员
UID 74940
性别 男
状态 离线
请大家帮忙了!
3 发表于 2007-02-02 02:45 ·  中国 山东 济南 电信
初级用户
积分 125
发帖 44
注册 2007-01-24 15:31
19年会员
UID 77555
性别 女
状态 离线
请将drain附件上来以供参考.
4 发表于 2007-02-02 03:30 ·  中国 重庆 沙坪坝区 联通
新手上路
积分 16
发帖 7
注册 2006-12-29 18:25
19年会员
UID 74940
性别 男
状态 离线
谢谢大家热心指点,尤其是redtek大哥的讲解,我测试过可以运行了,但是要实现循环输入怎么办?还请继续指教。
我现在可以实现程序的一次运行了。
我用的如下命令
drain < autoInput.txt
我的autoinput文件里有
js1
N
5 发表于 2007-02-02 03:39 ·  中国 北京 朝阳区 联通
金牌会员
★★★★
积分 2,902
发帖 1,147
注册 2006-09-21 12:00
19年会员
UID 63324
性别 男
状态 离线
循环10次:


@echo off

for /L %%i in (1,1,10) do ( drain < autoInput.txt )
    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
6 发表于 2007-02-02 03:55 ·  中国 重庆 沙坪坝区 联通
新手上路
积分 16
发帖 7
注册 2006-12-29 18:25
19年会员
UID 74940
性别 男
状态 离线
我不是单独想对js1作循环,下一个循环需要输入js2和N,再下一个js3和N,类推下去,请问该怎么办?谢谢。
7 发表于 2007-02-02 03:56 ·  中国 北京 朝阳区 联通
金牌会员
★★★★
积分 2,902
发帖 1,147
注册 2006-09-21 12:00
19年会员
UID 63324
性别 男
状态 离线

@echo off
setlocal


:: 运行100次,从 js1 一直变化到 js100

for /L %%i in (1,1,100) do (

echo js%%i >autoInput.txt
echo N >>autoInput.txt
drain < autoInput.txt
)

    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
8 发表于 2007-02-02 04:13 ·  中国 重庆 联通
新手上路
积分 16
发帖 7
注册 2006-12-29 18:25
19年会员
UID 74940
性别 男
状态 离线
由衷感谢redtek的耐心讲解,问题得到了圆满解决!在此深表谢意!
以后向你学习!
论坛跳转: