Board logo

标题: [其他] 为何批处理循环打开CMD窗口? [打印本页]

作者: qwe23068    时间: 2009-10-16 10:43     标题: 为何批处理循环打开CMD窗口?

  1. @echo off
  2. for /l %%i in (1,1,3) do start cmd
  3. pause
复制代码
按理说就应该只跳出3个CMD窗体
为什么我一点,就跳过不停呢?
作者: terse    时间: 2009-10-16 11:00

这个真不知道
作者: zhouyongjun    时间: 2009-10-16 12:06

你用内部或外部命令命名了你的P
作者: zhouyongjun    时间: 2009-10-16 12:09

不过你不改标题是会被锁帖的
而且你还把此问题问到论坛公告里去了
作者: asnahu    时间: 2009-10-16 12:10     标题: 回复 1楼 的帖子

是不是把代码保存为了CMD.BAT了?如果是该个名字。
作者: qwe23068    时间: 2009-10-16 14:38     标题: 回复 5楼 的帖子

是的,改为其它的就没事了。谢谢你了,你能不能告诉我这是怎么一回事
作者: vsbat    时间: 2009-10-16 15:07

如果 批处理 文件本身是 a.bat  而你的 bat 又要 start a.bat  那么 它当然 是 无限循环了
就算 你的 a 是 系统中特殊的 名字 比如 mspaint 或 你那个 cmd  也 不能避免厄运
作者: asnahu    时间: 2009-10-16 15:26     标题: 回复 6楼 的帖子

文件名不能是内部命令,如果保存为内部命令,批处理会进入死循环,因为文件一直在调用自身。
作者: qwe23068    时间: 2009-10-16 15:57     标题: 回复 8楼 的帖子

谢 谢 大 家  了
作者: zqz0012005    时间: 2009-10-16 18:50     标题: 回复 8楼 的帖子

以前说过很多次,文件名不要与外部命令相同。
内部命令不影响,因为它的优先级最高。
作者: strong12345    时间: 2009-10-17 02:52

你的文件名跟指令名重复,所以当使用指令时,误判成开启某批处理档案
作者: lovemmls    时间: 2009-10-17 07:11

@echo off
for %%i in (1,1,3) do start cmd
pause
你仔细看下是不是有误呢?
stsrt cmd 用在这里不适合。
作者: bhsx    时间: 2009-10-17 12:46

start cmd用不了WAIT有其他方法吗?
作者: zqz0012005    时间: 2009-10-17 12:56

谁说start cmd用不了WAIT?
作者: ywcao    时间: 2009-10-20 18:04

for %%a in ("1.txt" "2.txt" "3.txt") do echo >%%a中的1.txt中中文有影响吗




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2