Pyenv 安装系统版本而不是选择的本地版本

Pyenv installs the system version instead of the chosen local version

我想知道为什么这里选错了版本。这里有一些信息:

✦ ❯ which python3
/usr/bin/python3

~/ds/test-pyenv
✦ ❯ python3 -V
Python 3.8.10

~/ds/test-pyenv
✦ ❯ pyenv versions
  system
* 3.10.0 (set by /home/bebop/.pyenv/version)
  3.9.9

~/ds/test-pyenv
✦ ❯ pyenv local
pyenv: no local version configured for this directory

~/ds/test-pyenv
✦ ❯ pyenv local 3.10.0

为什么这里检测不到本地版本?

3.8.10 而不是 3.10.0

~/ds/test-pyenv via  v3.8.10
✦ ❯ python3 -m venv .venv

~/ds/test-pyenv via  v3.8.10
✦ ❯  source .venv/bin/activate

~/ds/test-pyenv via  v3.8.10 (.venv)
✦ ❯ which python3
/home/rsale/ds/test-pyenv/.venv/bin/python3

我怀疑问题出在这些模拟链接上,但我不知道它们是什么时候创建的。 关于我应该如何进行的任何想法?

~/ds/test-pyenv via  v3.8.10 (.venv)
✦ ❯ la .venv/bin
lrwxrwxrwx 1 rsale rsale    7 Jan 16 21:01 python -> python3
lrwxrwxrwx 1 rsale rsale   16 Jan 16 21:01 python3 -> /usr/bin/python3

我也在用WSL2

不是

的副本

Fernando Espinosa 的回答假定未设置本地 pyenv 版本,我显然正在这样做。

编辑更多信息

✦ ❯pyenv doctor
Cloning /home/rsale/.pyenv/plugins/pyenv-doctor/bin/.....
Installing python-pyenv-doctor...
Installed python-pyenv-doctor to /tmp/pyenv-doctor.20220116232505.7407/prefix

Congratulations! You are ready to build pythons!

✦ ❯pyenv
pyenv 2.2.2
Usage: pyenv <command> [<args>]

Some useful pyenv commands are:
   --version   Display the version of pyenv
   activate    Activate virtual environment...

✦ ❯which pyenv
pyenv () {
        local command
        command="${1:-}"
        if [ "$#" -gt 0 ]
        then
                shift
        fi
        case "$command" in
                (activate | deactivate | rehash | shell) eval "$(pyenv "sh-$command" "$@")" ;;
                (*) command pyenv "$command" "$@" ;;
        esac
}

别名 pyenv 做到了

alias pyenv='$PYENV_ROOT/bin/pyenv'

而 将 pyenv 添加到路径

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"

或者没有。

export PATH="$PYENV_ROOT/shims:$PATH"

仍然想知道为什么 pyenv failedpyenv doctor 有效。