You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在tox.ini的testenv中执行bash命令?

在tox.ini的testenv中执行bash命令的方法

原配置的问题

你给出的示例配置存在一个问题:tox会为commands下的每一条命令单独启动一个shell进程,因此第一条命令里设置的环境变量ABC无法传递到第二条命令中,执行后echo $ABC不会输出预期的123。

解决方法

方法1:将多条bash命令合并为单条shell执行

把需要连续执行的bash命令用bash -c包裹,让它们在同一个shell会话中运行,这样环境变量可以正常传递:

[testenv:testenv_name]
description = testenv描述
commands =
    bash -c 'export ABC="123"; echo $ABC'

方法2:用tox自带的setenv配置环境变量

直接通过tox的setenv选项定义环境变量,tox会自动将变量注入到命令的执行环境中,无需手动执行export:

[testenv:testenv_name]
description = testenv描述
setenv =
    ABC=123
commands =
    echo $ABC

内容的提问来源于stack exchange,提问作者kendallbp

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 12:32:32