[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理怎样启动几个指定的批处理文件?

谁能帮我写个批处理能随意启动某个文件夹下的某些批处理文件,比如说有Router文件下,里面有R1.bat、R2.bat等等一系列文件,能不能在那个打开的那个批处理里面输入start R1 R2就能启动这些文件了,用stop R1就能停止了,因为要经常用到所以每次打开都很烦 问题补充:可能我说的不大清楚,我的意思是能手动控制启动和停止的文件个数,比如打start R1就启动R1.bat,打start R1 R2就启动R1.bat和R2.bat,停止同理,还有关于那R1.bat和R2.bat我也要说明一下,这些也是批处理,这些执行之后,会在当前文件夹里面生成一个R1、R2等文件夹
[attach]2116[/attach]

能否把R1.bat和R2.bat的内容贴出来看看?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 2楼 的帖子

Router1.bat内容如下  
title Router1
mkdir Router1
cd Router1
:reload
..\dynamips-wxp.exe -T 2001 -f ..\FRSWITCH -P 3600 -r 96 -t 3640 -c 0x2142 -p 0:NM-4E -p 1:NM-4T -s 0:0:udp:11100:127.0.0.1:21001 -s 0:1:udp:11101:127.0.0.1:22001 -s 1:0:udp:51200:127.0.0.1:61100 -s 1:1:udp:51209:127.0.0.1:61109 -s 1:2:udp:11112:127.0.0.1:11213 -s 1:3:udp:11113:127.0.0.1:11912 ..\C3640-IK.BIN --idle-pc=0x605a6000
goto reload

TOP

  1. @echo off
  2. :loop
  3. set action=
  4. set /p action=请输入命令:
  5. call :%action%
  6. goto loop
  7. :start
  8. if "%~1"=="" goto :eof
  9. start cmd /c "%~n1.bat"
  10. shift
  11. goto start
  12. :stop
  13. if "%~1"=="" goto :eof
  14. set title=%~n1
  15. set title=Router%title:~-1%
  16. taskkill /f //fi "imagename eq cmd.exe" /fi "windowtitle eq %title%"
  17. shift
  18. goto stop
复制代码
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

这位大哥,你这个批处理似乎有点不符要求
我再说明一下
这个路径的文件夹   E:\Cisco\模拟器
文件夹里的东西就是我一开始的截图。当我运行文件夹里的Router1.bat(Router1.bat的配置我发到了三楼上)时就打开了一个路由器,会在当前文件夹下生成一个Router1的文件夹,里面会有配置!(因为这里调用了Cisco思科 3640的ios所以能生成模拟的配置)然后到一个SecureCRT软件下就可以做模拟路由的实验了
我现在就想做一个批处理,能在做好的那个批处理里,运行start R1 就能运行Router1.bat,start R1 R2就能运行两个,以此类推以致N个,还有用stop命令可以用来停止

TOP

回复 4楼 的帖子

这位大哥,你这个批处理似乎有点不符要求
我再说明一下
这个路径的文件夹   E:\Cisco\模拟器
文件夹里的东西就是我一开始的截图。当我运行文件夹里的Router1.bat(Router1.bat的配置我发到了三楼上)时就打开了一个路由器,会在当前文件夹下生成一个Router1的文件夹,里面会有配置!(因为这里调用了Cisco思科 3640的ios所以能生成模拟的配置)然后到一个SecureCRT软件下就可以做模拟路由的实验了
我现在就想做一个批处理,能在做好的那个批处理里,运行start R1 就能运行Router1.bat,start R1 R2就能运行两个,以此类推以致N个,还有用stop命令可以用来停止

TOP

回复 5楼 的帖子

请把所有要求一次性在顶娄描述清楚!

你开始说是R1.bat,现在又成了Router1.bat
  1. @echo off
  2. set WorkingDirectory=E:\Cisco\模拟器
  3. pushd "%WorkingDirectory:"=%"
  4. :loop
  5. set action=
  6. set /p action=请输入命令:
  7. call :%action%
  8. goto loop
  9. popd
  10. goto :eof
  11. :start
  12. set target=%*
  13. for %%a in (%target:R=%) do start /i cmd /c "Router%%a.bat"
  14. goto :eof
  15. :stop
  16. set target=%*
  17. for %%a in (%target:R=%) do taskkill /f /fi "imagename eq cmd.exe" /fi "windowtitle eq Router%%a"
  18. goto :eof
复制代码
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

回复 7楼 的帖子

其实源文件是Router1.bat,R1只不过是为了输命令时简单一点而已
大哥你太NB了,虽然没有到完美的地步,但基本功能已经实现了,太感谢了

TOP

返回列表