求助一个关闭cmd窗口的bat的问题

start "" ".\MouseJiggler.exe" -j -z -m -s 30
echo mousejigger started!
timeout /t 5
exit

上面是我的bat脚本,我主要需求是在点击bat,运行MouseJiggler.exe后,cmd窗口输出文字,再等待几秒钟后能关闭,此时MouseJiggler依旧能保持运行。

遇到的问题是:似乎start一个外部exe后,再用timeout,就无法通过"exit"来关闭cmd窗口了,单独timeout+exit或者单独start+exit,都可以在点击bat后运行完自动关闭cmd窗口。

问了ai都没有满意的答案,求助万能的网友

看起来你的这个批处理应该没有问题!
大概率是受其它因素影响!
比如在你的工作目录下或环境变量的path可能包含另一个文件名称叫exit

1 个赞

win11,启动的程序改成calc.exe,测试没问题
试下goto :eof看看

如果你关闭MouseJiggler,这个批处理是否会继续走下去?

试了一下,关闭MouseJiggler后,cmd窗口也被关闭了

cmd中使用where exit命令没有找到path中的exit……

我win10,打开calc.exe试了下,是正常的……这就奇怪了,可能是mousejiggler的问题了,感觉无解了

这种bat不能关闭.

用快捷方式不就行吗?

2 个赞

是的,本来我想加点启动参数的,但忘了快捷方式也可以手动加参数,是我脑子瓦特了 :joy:

1 个赞

快捷方式可以吗?我也去尝试下载了这个软件,好像并不行,关闭其中一个就会结束另一个。

是的,可以了!我直接在快捷方式的target后面加启动参数的

explorer_YtJ1gjhb65.png

1 个赞

调用nirsoft的pskill杀掉命令行窗口
如果要防止误杀其他的cmd可以把cmd改名

1 个赞