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