
标题: [文件操作] 批处理如何关闭一个EXE执行窗口 [打印本页]
作者: zcwslj 时间: 2020-5-24 15:53 标题: 批处理如何关闭一个EXE执行窗口
- @echo off
- :loop
- setlocal enabledelayedexpansion
- set py_exe="D:\Python37\pythonw.exe"
- set cmd1="D:\test\9.py"
- for /f "tokens=1,2,3,4 delims=," %%a in (D:\test\925.txt) do (
- ping -n 5 127.1>nul
- start /wait %py_exe% %cmd1% "%%a" "%%b" "%%c" "%%d"
- )
- ping -n 10 127.1>nul
- goto loop
- pause>nul
复制代码
批处理执行时,会循环跳出一个c/windows/py.exe标题的CMD窗口,该如何在循环中执行完一个命令,去关闭这个c/windows/py.exe标题的CMD窗口呢?
作者: ivor 时间: 2020-5-24 16:09
- TASKKILL /F /FI "WINDOWTITLE eq c/windows/py.exe"
复制代码
作者: zcwslj 时间: 2020-5-24 18:02
回复 2# ivor
测了,没用呀?
@echo off
:loop
setlocal enabledelayedexpansion
set py_exe="D:\Python37\pythonw.exe"
set cmd1="D:\test\9.py"
for /f "tokens=1,2,3,4 delims=," %%a in (D:\test\925.txt) do (
ping -n 5 127.1>nul
start /wait %py_exe% %cmd1% "%%a" "%%b" "%%c" "%%d"
taskkill /f /fi "windowtitle eq c:\Windows\py.exe"
)
ping -n 10 127.1>nul
goto loop
pause>nul
作者: zcwslj 时间: 2020-5-24 18:07
回复 2# ivor
进程里没有py.exe,只是执行完一个PYTHON文件,把跳出的CMD窗口关掉,再执行下一个
作者: 不知道是谁 时间: 2020-5-24 18:11
- tasklist /v /fi "imagename eq py.exe"
复制代码
首先确认进程标题
作者: zcwslj 时间: 2020-5-24 18:44
回复 5# 不知道是谁
这是循环弹出的 c:\windows\py.exe的CMD窗口,进程里也没有py.exe,我是要执行完一个PYTHON文件,关闭以弹出的CMD窗口,然后再执行下一个
作者: zcwslj 时间: 2020-5-24 19:40
大佬帮忙啊!!
作者: Batcher 时间: 2020-5-24 20:26
回复 6# zcwslj
执行你的bat脚本之前,先执行命令:复制代码
执行你的bat脚本之后,再执行命令:复制代码
把1.txt和2.txt打包压缩传上来看看进程名的对比
作者: zcwslj 时间: 2020-5-24 22:22
回复 8# Batcher
好的!
作者: zcwslj 时间: 2020-5-25 02:11
折腾到半夜,问题终于解决了。感谢各位大佬的帮助,尤其是Batcher管理的提醒。
,由于我的python文件使用了基于JAVA的代理,关闭方法并不能够完全清除相关进程,我在PYTHON代码里解决了,批处理中无需加入关闭进程的命令,就可以实现我要的效果了,谢谢各位!:loveliness:
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |