![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-18 12:08 |
共 47,814 主题排行 / 349,908 发帖 / 今日 1 篇 / 48,259 会员排行 |
| DOS疑难解答 & 问题讨论 (解答室) » 请问FOR语句 /的秘密````` |
| 可打印版本 3,769 / 25 |
| 第16楼 ghtfuo | 发表于 2006-10-26 05:05 |
| 初级用户 发帖 12 积分 122 | |
|
命令提示符
批处理中 记住了,谢谢你 |
|
| 第17楼 ghtfuo | 发表于 2006-10-26 05:08 |
| 初级用户 发帖 12 积分 122 | |
|
for/?
后面有几种用法 |
|
| 第18楼 ghtfuo | 发表于 2006-10-26 05:13 |
| 初级用户 发帖 12 积分 122 | |
|
格式就是
for/? %? +方式 +(范围)+动作+起始对象 +%? 是不是这样啊 |
|
| 第19楼 ghtfuo | 发表于 2006-10-26 05:19 |
| 初级用户 发帖 12 积分 122 | |
|
意思就是把所求的结果作为一个变量%X以什么样的方式用什么样的范围对一个对象做什么动作
然后把结果显出来? |
|
| 第20楼 lxmxn | 发表于 2006-10-26 12:15 |
| 版主 发帖 4,938 积分 11,386 | |
|
恩,大致是这样的吧。只要你自己真正理解了它的原理就够了。还是建议要多多练习for语句的使用,练习多了自然就对它更了解,用它解决问题就更得心应手了。 |
|
| 第21楼 ghtfuo | 发表于 2006-10-27 08:04 |
| 初级用户 发帖 12 积分 122 | |
|
好的
谢谢了 我看看cmd中的帮助 |
|
| 第22楼 ghtfuo | 发表于 2006-10-27 08:14 |
| 初级用户 发帖 12 积分 122 | |
|
FOR /F ["options"] %variable IN (file-set) DO command [command-parameters]
FOR /F ["options"] %variable IN ("string") DO command [command-parameters] FOR /F ["options"] %variable IN ('command') DO command [command-parameters] file-set "string" 'command' 各指代的是什么动作 “options”里面是不是可以载入这些 eol=c skip=n delims=xxx tokens=x,y,m-n usebackq |
|
| 第23楼 lxmxn | 发表于 2006-10-27 21:46 |
| 版主 发帖 4,938 积分 11,386 | |
|
Re : ghtfuo file-set:代表for执行的对象是一个文件,也可以是多个文件,同时支持通配符"?"和"*"; "string":表示for执行的对象是一个字符串,比如"www.Cn-Dos.Net"这个字符串; for /f "tokens=1,* delims=-" %i in ("www.Cn-Dos.Net") do @echo %i+%j执行的结果是:"www.Cn+Dos.Net"; 'command':表示for执行的对象是一个命令的输出,比如"ipconfig /all"这个命令; for /f "delims=: tokens=1*" %i in ('ipconfig /all^|find /i "ip address"') do @echo %j执行的结果是你的ip地址. 至于"Options",你说的是对的. 要多多体会这个命令的用法才能真正掌握它. [ Last edited by lxmxn on 2006-10-30 at 06:24 AM ] |
|
| 第24楼 ghtfuo | 发表于 2006-10-30 06:19 |
| 初级用户 发帖 12 积分 122 | |
|
delims的意思就是把执行语句中的每一次循环的处理结果,分割组合成一个集
tokens则是取一次往前移动一定步幅所得到的字符? ('ipconfig /add^|find /i "ip address"')这个括号里add^|find /i "的含义我不了解 [ Last edited by ghtfuo on 2006-10-30 at 06:21 AM ] |
|
| 第25楼 lxmxn | 发表于 2006-10-30 07:04 |
| 版主 发帖 4,938 积分 11,386 | |
|
Re : ghtfuo 哦,不要意思啊,打错了,我已经改了,这里的"add"应该是"all",这个"/all"是"ipconfig"命令的参数,它的作用就是显示计算机当前的TCP/IP配置的详细信息,包括IP,MAC,网关,和主机名等相关信息.是相对"ipconfig"命令没有参数的情况的.. 这里的"('ipconfig /all^|find /i "ip address"')"应该看作两个部分来理解,一个是"ipconfig /all",而另一个是"find /i "ip address"",前者在上面已经讲过了,而后者中的"/i"是"find"命令的参数,表示查找时忽略大小写,举个例子吧来看吧. 比如现在有一个文件abc.txt,里面的内容是: --------------------abc.txt--------------------------------------------- www.Cn-DoS.net www.cn-dos.net --------------------abc.txt--------------------------------------------- 只有这两行内容,那么在命令提示符里面执行"find "Cn-DoS" abc.txt",就可以找到第一行的内容,如果你用"find "cn-dos" abc.txt",就可以找到第二行的内容,如果你用到了"/i"这个参数,那么就表示查找字符串的时候忽略大小写,所以如果执行"find /i "cn-Dos" abc.txt"的话,那么abc.txt中的两行内容都可以找到.. 这里的"^|"是管道符,作用是把"ipconfig /all"的结果传输到"find /i "ip address""命令,也可以理解为把"ipconfig /all"的结果作为"find /i "ip address""命令的对象.而这里的"^"符号,是转义字符,之所以加上这个"^",是由于for命令的特性决定的.在for命令的括号里面使用管道符号"|",必须在前面加上一个"^"作为转义. 另外,建议你多看看系统自带的帮助文档.或者直接在命令行"命令 /?"查看帮助. [ Last edited by lxmxn on 2006-10-30 at 07:30 AM ] |
|
| 第26楼 ghtfuo | 发表于 2006-10-30 07:15 |
| 初级用户 发帖 12 积分 122 | |
|
一说就明白了
就是这个帮助文件找不到了 才问的 |
|
| 上一页 1 2 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |