中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 纯DOS下的批处理命令问题,急!
作者:
标题: 纯DOS下的批处理命令问题,急! 上一主题 | 下一主题
fpeich
新手上路





积分 5
发帖 5
注册 2009-4-11
状态 离线
『楼 主』:  纯DOS下的批处理命令问题,急!

请教各位:
  我在纯DOS下(MS-DOS7.1)怎么用for/f ,以及()这些在xp能正常运行的批处理命令就怎么不能运行了呢?我在纯DOS下查看了for的帮助文件,它和xp下面是不一样的,现在有几个问题想请教:1、在DOS下怎读取一个文件中的数据,整数型的数据,将其放在一个变量中,并进行+1操作
2、在DOS下怎样执行一组命令,比如if判断里面又有if语句等等!特别说明我是在纯dos下的哈,不是在windows下!在此谢谢大家了!


2009-4-19 15:50
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2342
发帖 635
注册 2004-3-6
状态 离线
『第 2 楼』:  

dos与cmd下批处理用法大异其趣
你会慢慢理解的

dos下代替for /f是debug的方案
或者使用第三方工具lmod,awk,4dos等

尤其是awk,可以实现你的大部分需求

2009-4-19 16:06
查看资料  发短消息 网志   编辑帖子  回复  引用回复
fpeich
新手上路





积分 5
发帖 5
注册 2009-4-11
状态 离线
『第 3 楼』:  

那么请问想一下执行多条语句呢?就是()的功能用什么实现呢?

2009-4-19 23:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2342
发帖 635
注册 2004-3-6
状态 离线
『第 4 楼』:  

用了awk你就知道if里面怎么嵌套if了

因为awk是个独立的命令行语言环境
提供了类C语法的支持
if的嵌套或者语句块是非常基础的语法支持

2009-4-20 02:18
查看资料  发短消息 网志   编辑帖子  回复  引用回复
fpeich
新手上路





积分 5
发帖 5
注册 2009-4-11
状态 离线
『第 5 楼』:  

能帮我写一个bat文件吗?实现的功能是:(请注意:运行的环境是MS-DOS 7.1

test.bat

if not exist  (a.txt) echo 1 >a.txt
if exist a.txt ,读出a.txt里面的1给变量var,进行判断,if var <=3 goto aboutm
if var >3 goto other (这个地方在MS-DOS下不知道怎么写)
:aboutm
echo this is aboutm
var+=1 (将变量自增1,也不知道怎么实现)
echo %var% >a.txt
pause

:other

echo this is  other place
pause

[ Last edited by fpeich on 2009-4-20 at 03:11 ]

2009-4-20 03:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qzwqzw
银牌会员

天的白色影子


积分 2342
发帖 635
注册 2004-3-6
状态 离线
『第 6 楼』:  

虽然提示你可以用awk来实现
但我个人并不喜欢awk的方式
不仅仅是因为它是第三方工具
也因其语法与批处理相差太远

如果你的var变量范围小于10
我可以考虑使用纯批处理实现

或者你把你的完整意图写出来
也许我会有其它不用var的办法

否则还是你仔细钻研一下Awk
有C语言基础学习它很简单的

2009-4-21 04:48
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: