【发布时间】:2018-07-06 00:45:07
【问题描述】:
我正在尝试自己学习使用 python 编写代码,但遇到了问题。
我正在使用 python 的子进程模块来执行一个 .bat 文件,但该进程似乎卡在了 bat 文件中。目前python代码如下:
import getpass
username = getpass.getuser()
from subprocess import Popen
p = Popen("hidefolder.bat", cwd=r"C:\Users\%s\Desktop" % username)
stdout, stderr = p.communicate()
import sys
sys.exit()
.bat 文件如下所示:
if exist "C:\Users\%username%\Desktop\HiddenFolder\" (
attrib -s -h "HiddenFolder"
rename "HiddenFolder" "Projects"
exit
)
if exist "C:\Users\%username%\Desktop\Projects\" (
rename "Projects" "HiddenFolder"
attrib +s +h "HiddenFolder"
exit
)
if not exist "C:\Users\%username%\Desktop\HiddenFolder\" (
mkdir "C:\Users\%username%\Desktop\HiddenFolder\"
)
exit
有没有办法杀死子进程,即使python脚本正在等待子进程在继续之前被终止?还是子进程中的问题开始? 先感谢您。
【问题讨论】:
标签: python batch-file subprocess