bat运行某个程序。 如果检测到程序正在运行就跳过直接关闭bat bat里有2个start

@echooffstart1.exestart2.exe检测1是否存在,如果存在直接关闭bat不运行任何程序如果不存在就按顺序执行... @echo off
start 1.exe
start 2.exe
检测1是否存在,如果存在直接关闭bat不运行任何程序 如果不存在就按顺序执行
展开
 我来答
依梦琴瑶
高粉答主

2016-08-03 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.6亿
展开全部
@echo off
tasklist|findstr /i /c:"1.exe" && exit
start 1.exe
start 2.exe
追问
目前有一个是这样的 关闭已有进程
set p=1.exe
tasklist|findstr /i %p%&&taskkill /f /im %p%||start "" "%p%"
start 2.exe
我想改成已有进程直接关闭bat 不在往下执行

另外把当前目录的1.exe发送到桌面快捷方式怎么弄啊
追答

我上面的代码就是检测到已存在的进程后直接退出脚本!你如果需要变量,自己更改一下就可以了!

至于发快捷方式,请看:

@echo off
set ExeFile=1.exe
(echo Set WshShell = WScript.CreateObject^("WScript.Shell"^)
echo strDesktop = WshShell.SpecialFolders^("Desktop"^)
echo set oShellLink = WshShell.CreateShortcut^(strDesktop ^& "程序名.lnk"^)
echo oShellLink.IconLocation = "%~dp0%ExeFile%,0"
echo oShellLink.TargetPath = "%~dp0%ExeFile%"
echo oShellLink.WorkingDirectory = "%~dp0"
echo oShellLink.WindowStyle = 1
echo oShellLink.Save)>makelnk.vbs
makelnk.vbs
del /f/q makelnk.vbs
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式