中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-03 10:53
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 求助if "%1"=="a" format a:指什么?谢谢
可打印版本  1,022 / 6
第1楼 oilio 发表于 2007-02-23 23:00
高级用户 发帖 303 积分 641
求助if "%1"=="a" format a:指什么?谢谢
我看到一个格式化A盘的批处理,但一直不太理解这段中的%1指的是什么。
@echo off
if "%1"=="a" format a:
:format
@format a:/q/u/auotset
@echo please insert another disk to driver A.
@pause
@goto fomat

这段中的if "%1"=="a" format a:中的%1到底指的是什么呢?加不加这句有什么意义呢?知道的朋友帮忙解释一下好吗?谢谢。
第2楼 slore 发表于 2007-02-23 23:26
铂金会员 发帖 2,478 积分 5,212
%1是参数……
第3楼 slore 发表于 2007-02-23 23:27
铂金会员 发帖 2,478 积分 5,212
F.bat a
第4楼 anqing 发表于 2007-02-23 23:31
高级用户 发帖 413 积分 859
例如,C:根目录下一批处理文件名为f.bat,内容为 format %1

  则如果执行C:\>f a:    则实际执行的是format a:

  又如C:根目录下一批处理文件的名为t.bat,内容为 type %1 type %2

  那么运行C:\>t a.txt b.txt 将顺序地显示a.txt和b.txt文件的内容


  if goto choice for 是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。
if 表示将判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:
1、if "参数" == "字符串"  待执行的命令
参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号)
如if "%1"=="a" format a:
第5楼 NaturalJ0 发表于 2007-02-23 23:34
银牌会员 发帖 533 积分 1,181
%0 指批处理本身
%1 指第一个参数
%2 指第二个参数
。。。
如果超过九个了,就要用 shift 了。
好像是这样。
第6楼 qasa 发表于 2007-02-24 03:33
高级用户 发帖 311 积分 959 来自 广东-LianJiang
看了这段代码,其实有没有

都是一样的,一样会继续执行下面的代码。
第7楼 oilio 发表于 2007-02-24 09:13
高级用户 发帖 303 积分 641
谢谢各位的回答,4楼的朋友说得是好教材,感谢,前段时间看过这些内容,但还是要感谢,三楼的朋友打的字最少,但让我好像有了一些明白。思路已经差不多理清了,谢谢。也感谢其它朋友的回答,衷心谢谢各位的帮忙。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023