中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-18 08:47
47,814 主题排行 / 349,907 发帖 / 今日 0 篇 / 48,259 会员排行
DOS批处理 & 脚本技术(批处理室) » 请问关于DOS的批处理命令的问题!!
可打印版本  2,361 / 3
第1楼 copy114 发表于 2002-11-11 00:00
初级用户 发帖 37 积分 229
请问关于DOS的批处理命令的问题!!
我今天在一些DOS的书上看到这样的命令,不过我不明白它具体是怎样用,什么意思也不大了解,请高手们指点我一下!!

1。 下面的批文件将重复显示几个指定文件的内容:
c:\>type demo2.bat
for %%x in (%1 %2 %3 %4) do type %%X
c:\>
我想问的就是;
1。%1 %2 %3 %4 这本来就是批处理文件的参数,上面这条命令把它放到括号里面起了什么作用啊?我们怎么定义它的参数的值啊?

还有的就是我经常在看到有一些这样式表达方式 %cdrom% 这两边的%又代表什么意思呢?什么情况下又可以用这些表达方式呢?请各位指教吧。。
第2楼 Wengier 发表于 2002-11-11 00:00
系统支持 发帖 10,521 积分 27,736
cdrom两边的%表示它是环境变量。那条命令的意思是显示执行批处理文件时所输入的%1、%2、%3、%4所对应的参数中的文件中的内容。例如当运行DEMO2 *.TXT *.DOC *.BAT时,就会自动显示那些文件中的内容。
第3楼 GOTOmsdos 发表于 2003-12-13 00:00
铂金会员 发帖 1,827 积分 5,154
其实参数中也是可以叠用参数的!
可以这样: 如,一个批处理名为
"ab.bat"
@echo off
for %%a in (%1 %2 %3 %4) do type %%a
可以这样执行:
c:\>ab 1.txt 2.txt 3.txt 4.txt

直接在命令行也行
c:\>for %a in (%1 %2 %3 %4) do type %a 1.txt 2.txt 3.txt 4.txt
第4楼 willsort 发表于 2005-10-27 13:32
元老会员 发帖 1,512 积分 4,432
Re gotomsdos:

在3楼中的命令行用法是错误的。在命令行中不会分析和转义%1等这些专用于批处理的命令行参数,从而造成Type命令的多参数错误。即使在NT CMD中的type已经可以允许多参数,但是仍然会有%1无法识别的语法错误。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023