gpt4 book ai didi

bash - 在 tox 中运行条件 bash 命令

转载 作者:行者123 更新时间:2023-12-04 14:21:21 24 4
gpt4 key购买 nike

我正在尝试在 Tox 中运行条件 bash 命令。

如果用户将“stag”传递给脚本,tox 应该运行一个 curl 命令;如果他们将“prod”传递给脚本,它应该运行另一个 curl 命令。

[testenv]
ENV=$1
whitelist_externals=
/bin/bash
deps=
-rrequirements.txt
commands=
bash -ec 'curl https://this_is_just_sample_test.com'
pytest test/test.py

当我尝试向批处理命令引入条件时:

[testenv]
ENV=$1
whitelist_externals=
/bin/bash
deps=
-rrequirements.txt
commands=
bash -ec 'if [$1 == "stag"]; then curl https://this_is_just_sample_test.com fi'
pytest test/test.py

我收到以下错误消息:

ERROR: InvocationError for command '/bin/bash -ec if [$1 = "stag"]; then curl https://this_is_just_sample_test.com fi' (exited with code 2)

最佳答案

让我为您修复代码(我为 [] 命令添加了空格,将参数更改为 $0 并添加了一个分号):

[testenv]
whitelist_externals=
/bin/bash
deps=
-rrequirements.txt
commands=
bash -ec 'if [ "$0" == "stag" ]; then curl https://this_is_just_sample_test.com; fi' {posargs}
pytest test/test.py

{posargs} is a substitution允许从 tox 调用传递命令行参数。像这样:

$ tox stag

关于bash - 在 tox 中运行条件 bash 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54449830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com