gpt4 book ai didi

python - shell 函数如何知道它是否在 virtualenv 中运行?

转载 作者:IT老高 更新时间:2023-10-28 22:21:02 32 4
gpt4 key购买 nike

bash 函数应该如何测试它是否在 Python virtualenv 中运行?

想到的两种方法是:

[[ "$(type -t deactivate)" != function ]]; INVENV=$?

[[ "x$(which python)" != "x$VIRTUAL_ENV/bin/python" ]]; INVENV=$?

(注意:如果我们在 virtualenv 中,希望 $INVENV 为 1,否则为 0,这是强制执行上述回溯测试的原因。)

还有什么不那么老套的吗?

最佳答案

if [[ "$VIRTUAL_ENV" != "" ]]
then
INVENV=1
else
INVENV=0
fi
// or shorter if you like:
[[ "$VIRTUAL_ENV" == "" ]]; INVENV=$?

EDIT:正如@ThiefMaster 在评论中提到的那样,在某些情况下(例如,当启动一个新的 shell 时——可能在 tmuxscreen – 从事件的 virtualenv 中)此检查可能会失败(但是,从 virtualenv 中启动新的 shell 也可能会导致其他问题,我不建议这样做)。

关于python - shell 函数如何知道它是否在 virtualenv 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15454174/

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