标题: 请问:100个bat文件,如何每次10个打开?
[打印本页]
作者: i9420
时间: 2008-10-6 18:41
标题: 请问:100个bat文件,如何每次10个打开?
假设我的bat文件夹里有100个bat文件,文件名字无规律,想要一次打开10个,一直打开10次,怎么实现呢?
麻烦大家了。
作者: tireless
时间: 2008-10-6 18:55
那是什么意思?打开 10 个后,提示“请按任意键继续. . .”?
作者: i9420
时间: 2008-10-6 19:04
就是每次打开10个 cmd窗口。
这个cmd窗口执行完毕他本身的命令后就自己退出了。然后继续打开下一个。
因为电脑配置不好。所以不想100个一起执行。。
作者: tireless
时间: 2008-10-6 20:12
貌似执行 start "" "test.bat",test.bat 执行完后不会关闭...
作者: HAT
时间: 2008-10-6 21:16
这样能满足要求么?
@echo off
for %%a in ("C:\test\*.bat") do (
start /wait "" "%%a"
)
作者: hackate
时间: 2008-10-6 22:21
@echo off
setlocal enabledelayedexpansion
set wjcount=0
set beishu=0
for /f %%a in ('dir "g:\chuli" ^|findstr "个文件"') do set wjs=%%a
set /a yu=%wjs%%%10
set /a bei=%wjs%/10
for /f "tokens=*" %%i in ('dir /b g:\chuli\*.txt') do (
set /a wjcount+=1
set _!wjcount!=%%i
if !wjcount! equ 10 (
set /a beishu+=1
set wjcount=0
for /l %%a in (1,1,10) do (start g:\chuli\!_%%a!)
ping -n 5 127.0.1>nul 2>nul
)
if !beishu! equ %bei% (
if %yu% equ 0 goto :eof
if !wjcount! equ %yu% (
for /l %%b in (1,1,%yu%) do (start g:\chuli\!_%%b!)
)
)
)
pause
这样就可以啦.呵呵,比较麻烦哈
[
Last edited by hackate on 2008-10-6 at 22:24 ]
作者: i9420
时间: 2008-10-7 09:28
感谢楼上的各位热心人士。我去试下。非常感谢
作者: i9420
时间: 2008-10-7 09:37
for /f %%a in ('dir "g:\chuli" ^|findstr "个文件"') do set wjs=%%a
for /f "tokens=*" %%i in ('dir /b g:\chuli\*.txt') do (
有没办法用相对路径呢。呵呵。这样的话貌似比较麻烦。
HAT版主的方法好像不行,运行后出现一闪一闪的东西。
作者: hackate
时间: 2008-10-7 12:18
你把运行的这个批处理放在你的100个批处理文件的上层目录.就可以直接使用相对路径...不然的话也是要指定路径的..
例如你的100个批处理放在 g:\chuli这个文件夹下.
那么你这个启动100个批处理的文件最好别放在同个目录,会比较麻烦,如若放在上层目录也就是g:\盘下,那么直接把上面的代码改成
dir /b "chuli\*.bat"
就可以的啊。?
或者你可以定义一个变量
set xx=g:\chuli\
然后直接引用这个变量为路径..如若路径有更改直接更改这个变量也就可以了嘛,