![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 00:31 |
共 48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » cmd如何跳转到for命令。。3742668版主请进。 |
| 可打印版本 2,553 / 19 |
| 第1楼 zrz000 | 发表于 2006-08-17 07:24 |
| 初级用户 发帖 16 积分 44 | |
|
cmd如何跳转到for命令。。3742668版主请进。 我试一个批处理。本意是想解决系统关于“内存??不能???‘的问题。如下:
1.@echo off 2.start cmd 3.pause 4.for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 5.echo. 运行了以后只能出现命令提示符下面就不执行了。。。。请帮修改一下。 |
|
| 第2楼 chenall | 发表于 2006-08-17 08:18 |
| 银牌会员 发帖 469 积分 1,276 来自 福建泉州 | |
|
使用cmd /c连接吧.
不过有这个必要吗?为什么非得start cmd呢? 把这一行去掉不行吗? |
|
| 第3楼 zrz000 | 发表于 2006-08-17 08:39 |
| 初级用户 发帖 16 积分 44 | |
|
删除了不能执行的。奇怪的/
|
|
| 第4楼 namejm | 发表于 2006-08-17 08:46 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
第三行的pause有存在的必要吗?
|
|
| 第5楼 bagpipe | 发表于 2006-08-17 09:09 |
| 银牌会员 发帖 425 积分 1,144 来自 北京 | |
|
这个批文件有用吗?我倒是没有什么感觉........;)
|
|
| 第6楼 zrz000 | 发表于 2006-08-17 09:41 |
| 初级用户 发帖 16 积分 44 | |
|
问题不是有用没有用。而是能不能从cmd跳到for然后执行。楼上两位说的都是无关紧要的。。。。
|
|
| 第7楼 zrz000 | 发表于 2006-08-17 09:53 |
| 初级用户 发帖 16 积分 44 | |
|
bagpipe 兄弟进---你说cmd如何转到for?? bagpipe 兄弟,知道你是一个高手。请你说一下我发的帖子里的批处理如何处理,就是那个cmd跳到for命令执行????
这个破烂你捡定了,,哈。。。。。。。。。。 |
|
| 第8楼 无奈何 | 发表于 2006-08-17 10:03 |
| 荣誉版主 发帖 356 积分 1,338 | |
|
RE zrz000
你要的是不是这种效果:
在批处理中用下面的代码:
|
|
| 第9楼 无奈何 | 发表于 2006-08-17 10:28 |
| 荣誉版主 发帖 356 积分 1,338 | |
|
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃▓ 中国DOS联盟 >> 批处理室版务管理 _ □ ×┃ ┠─────────────────────────────┬┨ ┃Microsoft Windows XP │┃ ┃(C) 版权所有 1985-2001 Microsoft Corp. │┃ ┃ │┃ ┃C:\无奈何>版务管理.cmd │┃ ┃start ... │┃ ┃操作:合并主题 {22667}bagpipe 兄弟进-你说cmd如何转到for? │┃ ┃说明:操作主题与本主题内容重复 │┃ ┃提示:请不要发重复相同内容的主题 │┃ ┃处罚:鉴于 zrz000 是新人不做处罚 │┃ ┃ │┃ ┃ │┃ ┃ │┃ ┃ │┃ ┃C:\无奈何>▂ │┃ ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┷┛ |
|
| 第10楼 zrz000 | 发表于 2006-08-17 10:31 |
| 初级用户 发帖 16 积分 44 | |
Originally posted by 无奈何 at 2006-8-17 10:03: 真心感谢。 |
|
| 第11楼 zrz444 | 发表于 2006-08-17 10:49 |
| 新手上路 发帖 6 积分 16 | |
|
运行了以后可以执行了..谢谢 .无奈何版主.能解释一下.为什么我的就不能执行.你的却能呢?好人做到底啊.
start cmd /c for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 start cmd /c "(for %i in (%windir%\system32\*.dll) do @echo %i) &pause" 我批处理才学习三天哪.不懂的...乱来来的../ |
|
| 第12楼 bagpipe | 发表于 2006-08-17 11:05 |
| 银牌会员 发帖 425 积分 1,144 来自 北京 | |
|
其实要我说用不着START命令,直接
cmd /c "(for %i in (%windir%\system32\*.dll) do @echo %i) &pause" 或者 cmd /c ((for %i in (%windir%\system32\*.dll) do @echo %i) &pause)就可以了,至于你的代码 @echo off start cmd pause for %%1 in (%windir%\system32\*.dll) do echo %%1 是可以执行成功的,只不过你用start cmd 启动了另外一个CMD的SHELL,而你 for %%1 in (%windir%\system32\*.dll) do echo %%1这句是运行在原来的CMD的SHELL中,之所以无奈何版主的代码: start cmd /c "(for %%i in (%%windir%%\system32\*.dll) do @echo %%i) &pause" 可以,是因为后面的执行的语句是作为你新SHELL的参数来执行的,DO YOU UNDERSTAND ??? |
|
| 第13楼 namejm | 发表于 2006-08-17 11:26 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
无奈何9楼的帖子很酷,如果连论坛管理都可以用批处理来弄的话,那真是太强了。
弱弱地问一句:真的有这样的批处理吗?记得willsort曾经说过他是用模块在管理论坛的。 [ Last edited by namejm on 2006-8-17 at 13:01 ] |
|
| 第14楼 zrz000 | 发表于 2006-08-17 11:57 |
| 初级用户 发帖 16 积分 44 | |
|
YES SIR .I UNDERSTAND! THANK YOU!!
|
|
| 第15楼 无奈何 | 发表于 2006-08-17 12:29 |
| 荣誉版主 发帖 356 积分 1,338 | |
|
RE zrz000 444
bagpipe 兄的解释已经很清楚了,我猜想你的目的是想弹出一个CMD窗口来显示执行信息。你将echo %%i 替换为你的执行语句就可以了。 RE namejm 这是我正在构思的一个脚本,借助 gawk 在技术上没有太大问题,现在我在考虑怎么增加一些默认选项尽可能的方便、怎么接收输入操作量更小、怎么才能适应多种不同操作等一些细节问题。具体什么时候出来成品看我时间的宽裕程度。兄有兴趣也可以尝试完成一下,要想完善的话需要花一些心思,有点挑战性的。 |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |