Python如何执行CMD指令,运行bat文件,并且获取cmd窗口的pid

目前代码如下,想过用.pid获取,或者用psutil模块的方法获取,但是都获取不到正确的pid,请问有什么比较好的办法吗?

    path = r"E:\kettle71\data-integration\oracle_to_mssql.bat"
    cmd = f"start cmd /b /k {path}"
    res = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    print(res.pid)

res.pid获取的当前进程开的子进程的进程编号,而你这个是子进程中使用shell执行开新窗口的指令,相当于孙进程,如果你要获取的是shell执行命令的进程号,我想这个是非常困难的,通过名称获取或许是一个思路,但是没有经过测试,如果楼主找到方法,非常希望共享下

你上面这个suprocess就可以啊