如何用一个bat文件调用另外两个bat文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用一个bat文件调用另外两个bat文件?相关的知识,希望对你有一定的参考价值。

有两个bat文件(不在同一个文件夹中),我想用一个bat文件调用执行这两个文件,该怎样写代码?
要依次执行文件,并且能从bat中返回来(不要运行完了还留个窗口)。比如这两个文件的地址分别为:c:\1\a.bat ; c:\2\a.bat

项目运行时,需要先运行selenium-server.bat,启动成功一个在运行build.bat,达到每个类都运行的效果。\x0d\x0a@echooff\x0d\x0astartselenium-server.bat\x0d\x0aechowscript.sleep5000>delay.vbs\x0d\x0acscript//nologodelay.vbs&deldelay.vbs\x0d\x0acallbuild.bat 参考技术A setlocal enabledelayedexpansion
set /a n=0
for /f %%i in ('tasklist ^|findstr /i "cmd.exe" ' ) do (
set /a n=!n!+1
)
set /a old=%n%
start c:\1\a.bat

:loop
set /a n=0
for /f %%i in ('tasklist ^|findstr /i "cmd.exe" ' ) do (
set /a n=!n!+1
)
set /a new=%n%
ping 127.1 -n 2 > nul
if %new% gtr %old% goto loop|| goto bat2

:bat2
start c:\2\a.bat
--------------------------
不知道是不是我想复杂了....
看批处理吧
就是检测当前系统运行过程中CMD进程数量 也就是 调用1.bat之后 检测到 少了一个CMD.exe进程才进行下一步操作 调用bat2

缺点也很明显
1.第一个BAT运行完之后可以自动退出..一般没有pause运行完也就关了..
2.运行此脚本之后 如果后台还有CMD.EXE进程运行,第一个BAT运行过程中 恰好后台的CMD进程结束,也会提前调用第二个BAT
3. ...运行中要是别的程序又开了CMD进程 没有关闭 那就没办法调用第二个bat..本回答被提问者采纳
参考技术B 项目运行时,需要先运行selenium-server.bat,启动成功一个在运行build.bat,达到每个类都运行的效果。
@echo off
start selenium-server.bat
echo wscript.sleep 5000 > delay.vbs
cscript //nologo delay.vbs & del delay.vbs
call build.bat
参考技术C @echo off
start c:\1\a.bat
start c:\1\a.bat
最上面个时隐藏自己
下面两个是打开文件
参考技术D start 1.bat
start 2.bat

如何用批处理文件(.bat)停止或启动windows的服务 ?

如何用批处理文件(.bat)停止或启动windows的服务 ?

NET STOP service

NET STOP 用于终止 Windows 服务。
终止一个服务可以取消这个服务正在使用的任何一个网络连接。同样的一些
服务是依赖于另外一些服务的。终止一个服务就会终止其它服务。
用户必须终止服务器服务的管理权限。不能终止事件记录服务。
service 指如下服务之一:
ALERTER
BROWSER
CLIENT SERVICE FOR NETWARE
CLIPBOOK
DHCP CLIENT
FILE REPLICATION
MESSENGER
NET LOGON
NT LM SECURITY SUPPORT PROVIDER
REMOTE ACCESS CONNECTION MANAGER
ROUTING AND REMOTE ACCESS
RPCLOCATOR
SCHEDULE
SERVER
SPOOLER
TCP/IP NETBIOS HELPER SERVICE
UPS
WORKSTATION
NET STOP 还可以终止 Windows 没有提供的网络服务。

NET START service

NET START 用于列出正在运行的服务。
service 指如下服务之一:
ALERTER
BROWSER
CLIENT SERVICE FOR NETWARE
CLIPBOOK
DHCP CLIENT
EVENTLOG
FILE REPLICATION
MESSENGER
NET LOGON
NT LM SECURITY SUPPORT PROVIDER
PLUG AND PLAY
REMOTE ACCESS CONNECTION MANAGER
ROUTING AND REMOTE ACCESS
RPCLOCATOR
RPCSS
SCHEDULE
SERVER
SPOOLER
TCP/IP NETBIOS HELPER SERVICE
UPS
WORKSTATION

当在命令行下输入时,两个或多个字的服务名称必须包含在引号中。例如,
NET START "NET LOGON" 启动网络登录服务。
NET START 还可以启动 Windows 中没有提供的网络服务。

另外 net stop service && net start service是重启 service服务。
参考技术A 启动和停止服务的命令是:
net start 服务名
net stop 服务名
我们用批处理程序,写也是按照上面的方法。
例如:要停止telnet服务。就在记事本中写入:
@echo off
@net stop telnet
然后保存为.bat格式就可以。
参考技术B 启动和停止服务的命令是:
net start 服务名
net stop 服务名
注意有些服务是不能直接开启或停止的

以上是关于如何用一个bat文件调用另外两个bat文件?的主要内容,如果未能解决你的问题,请参考以下文章

如何用bat文件打开另一文件夹下面的bat文件

用一个bat文件调用另外两个bat文件,当1.bat执行完后再执行2.bat

如何用bat文件调用与它在同一文件夹下的某个exe程序

如何用bat调用bandizip加密压缩当前目录的所有文件夹?

如何用批处理文件(.bat)停止或启动windows的服务 ?

如何用python运行bat文件?