![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-03 00:37 |
共 48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » if怎么用呀,请救救我呀~~! |
| 可打印版本 922 / 13 |
| 第1楼 cmshun | 发表于 2007-01-02 10:48 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
if怎么用呀,请救救我呀~~! IF %1=={A}是什么意思,我看不懂呀,这个是不是如果变量1=字符串A就执行下面的命令,可是我不懂,他这个%1指的是什么,哪位大哥教教我,谢谢了,最好有例题,A是指的打字母A还是什么东西,
|
|
| 第2楼 本是 | 发表于 2007-01-02 10:56 |
| 银牌会员 发帖 790 积分 2,227 | |
|
应该是IF {%1}=={A}吧?
%1是第1个参数 {}是防止出现空白参数造成无法识别 A是字符A [ Last edited by 本是 on 2007-1-2 at 10:59 AM ] |
|
| 第3楼 cmshun | 发表于 2007-01-02 11:16 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
{%1}是变量了,意思就是变量1=字符A
那么%1是第一个参数,我怎么确认他是第一个参数呢 下面一个批处理,帮我看看 fot /f %a in (1,1,254) do net use %1.%aipc$ %2 /u:%3 中间的%1我想指定成192.168.1可不可以为样写 if {%1}=={192.168.1} |
|
| 第4楼 本是 | 发表于 2007-01-02 11:46 |
| 银牌会员 发帖 790 积分 2,227 | |
|
对。
如果x.bat 192.168.1 222 3, 那么192.168.1是第1参数,222是第2参数,3是第3参数,x是第0参数。 |
|
| 第5楼 cmshun | 发表于 2007-01-02 11:55 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
if {%1}=={192.168.1} goto for
:for for /L %%G in (1 1 254) do ping -n 1 %1.%%G >>test.txt 不对呀,这个批处理是A,我用A 192.168.0 他也执行,A 192.168.1 他也执行,怎么回事 |
|
| 第6楼 本是 | 发表于 2007-01-02 12:26 |
| 银牌会员 发帖 790 积分 2,227 | |
|
你没跳过不符合条件的部分。改为:
if {%1}=={192.168.1} goto for GOTO ENDIT :for for /L %%G in (1 1 254) do ping -n 1 %1.%%G >>test.txt :ENDIT |
|
| 第7楼 cmshun | 发表于 2007-01-02 12:37 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
ENDIT是啥子东东哦,END才是完结呀,为什么,IF后面可以有两个GOTO,一个GOTO FOR,一个GOTO ENDIT还有,{}可不可以用""号代替,我看到好多批处理都是IF "%1"=="A"的形式
[ Last edited by cmshun on 2007-1-1 at 11:47 PM ] |
|
| 第8楼 本是 | 发表于 2007-01-02 12:51 |
| 银牌会员 发帖 790 积分 2,227 | |
|
如果 {%1}=={192.168.1}
:for for /L %%G in (1 1 254) do ping -n 1 %1.%%G >>test.txt 否则 GOTO ENDIT 结束如果 ::中间还可以 ::有许多内容 :ENDIT ::上一行是行标号,叫别的也行 |
|
| 第9楼 本是 | 发表于 2007-01-02 12:54 |
| 银牌会员 发帖 790 积分 2,227 | |
|
{}可以换成许多形式,如..、()、""、__、``。
|
|
| 第10楼 cmshun | 发表于 2007-01-02 13:02 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
哦,明白了,谢谢了,,意思就是IF还可以是这种形式
if {%1}=={a} goto xx 条件成立转到xx goto .. 这句意思是,否则,结束如果 还有没其它形式,比如说 if {%1}=={a} elsa 什么什么 |
|
| 第11楼 本是 | 发表于 2007-01-02 13:09 |
| 银牌会员 发帖 790 积分 2,227 | |
|
纯DOS下没有了,那是高级语言的东西。
|
|
| 第12楼 cmshun | 发表于 2007-01-02 13:10 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
在请教一个问题,前时,有一个病毒,在每个文件夹生成一个_desktop.ini的文件,我可以用FOR把他删了吗,昨天做了一个,我觉的太复杂,结果今天就搞忘记了,可不可以简单一点,
dir f:\ /ad /s /b | sort /r >>a.txt for /f %a in (a.txt) do del %a_desktop.ini 好像是这么的,你看对不对,结果没删到,我在想可能是_desktop.ini是隐藏的,我没去禹性,所以删不到 if {%1} gtr 什么意思 [ Last edited by cmshun on 2007-1-2 at 12:15 AM ] |
|
| 第13楼 本是 | 发表于 2007-01-02 13:19 |
| 银牌会员 发帖 790 积分 2,227 | |
|
if {%1} gtr应该是如果%1大于(gtr=GreaTeR)
for /f %a in (a.txt) do del %a_desktop.ini应该改为 for /f %a in (a.txt) do del %a\_desktop.ini [ Last edited by 本是 on 2007-1-2 at 01:30 PM ] |
|
| 第14楼 cmshun | 发表于 2007-01-02 13:38 |
| 初级用户 发帖 36 积分 85 来自 四川德阳 | |
|
哦,对了,非常感谢,我睡了,有问题在找你,一定要给我说哦
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |