使用 subprocess.Popen
中的 env
参数可以设置子进程的环境变量。env
参数应该是一个字典,其中键是环境变量的名称,值是环境变量的值。
以下是一个示例代码,演示如何使用 subprocess.Popen
设置子进程的环境变量:
import subprocess
# 设置环境变量
env = {'CUSTOM_VAR': 'custom_value'}
# 启动子进程
process = subprocess.Popen('echo $CUSTOM_VAR', shell=True, env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# 等待子进程结束
stdout, stderr = process.communicate()
# 打印子进程输出
print(stdout.decode('utf-8'))
在上面的示例中,我们设置了一个名为 CUSTOM_VAR
的环境变量,并在子进程中通过 echo $CUSTOM_VAR
命令打印出其值。最后,我们通过 process.communicate()
方法获取子进程的输出并打印出来。