首页 > 解决方案 > 如何使用 python 变量作为参数从 python 脚本调用 bash 脚本并设置 pid

问题描述

我有以下代码:

port_temp = 8080
process_getpodsnamesipport = subprocess.call(['bash','getpodsnamesipport.sh', port_temp],preexec_fn=os.setsid)

我想做类似的事情:

os.killpg(os.getpgid(process_getpodsnamesipport.pid), signal.SIGKILL)

杀死进程,但只有 subprocess.Popen 才有可能。

os.killpg(os.getpgid(process_getpodsnamesipport.pid), signal.SIGKILL)
AttributeError: 'int' object has no attribute 'pid'

标签: pythonbash

解决方案


这对我有用:

process_getpodsnamesipport = subprocess.Popen(['./getpodsnamesipport.sh', str(port_temp)],preexec_fn=os.setsid)
    //something something
    os.killpg(os.getpgid(process_getpodsnamesipport.pid), signal.SIGKILL)

推荐阅读