如何用C语言运行一个bat文件

Posted

tags:

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

用C中的spawnlpe只能调用exe程序,那如果我把一个命令写在bat文件里,想让他运行,怎么做```

在程序中使用system()函数
假设bat文件的名称叫a.bat
即:
system("a.bat");

windows操作系统下system () 函数详解(主要是在C语言中的应用) 
函数名: system
功 能: 发出一个DOS命令
用 法: int system(char *command);
system函数已经被收录在标准c库中,可以直接调用
参考技术A system("a.bat");

函数名: system
功 能: 发出一个DOS命令
用 法: int system(char *command);
程序例:

#include
#include

int main(void)

printf("About to spawn command.com and run a DOS command\n");
system("dir"); //这里就是DOS下的dir命令
return 0;
本回答被提问者采纳

如何用一个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

以上是关于如何用C语言运行一个bat文件的主要内容,如果未能解决你的问题,请参考以下文章

批处理查找TXT文件中数据的问题,比如有几行 A B C D E 如何用BAT查找到C行,并在批处理中显示出BCD

急!急!急!如何用bat运行一个影片并且全屏播放

如何用一个.bat文件运行一下快速与Internet同步计算机时间?

如何用python运行bat文件?

如何用bat文件启动一个exe文件

如何用bat文件执行cmd命令?