You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.3 KiB

пре 11 година
пре 10 година
пре 11 година
пре 10 година
пре 10 година
пре 10 година
пре 10 година
пре 11 година
  1. #!/usr/bin/env bash
  2. # Summary: Display prefix for a Python version
  3. # Usage: pyenv prefix [<version>]
  4. #
  5. # Displays the directory where a Python version is installed. If no
  6. # version is given, `pyenv prefix' displays the location of the
  7. # currently selected version.
  8. set -e
  9. [ -n "$PYENV_DEBUG" ] && set -x
  10. # Provide pyenv completions
  11. if [ "$1" = "--complete" ]; then
  12. echo system
  13. exec pyenv-versions --bare
  14. fi
  15. if [ -n "$1" ]; then
  16. OLDIFS="$IFS"
  17. { IFS=:
  18. export PYENV_VERSION="$*"
  19. }
  20. IFS="$OLDIFS"
  21. elif [ -z "$PYENV_VERSION" ]; then
  22. PYENV_VERSION="$(pyenv-version-name)"
  23. fi
  24. PYENV_PREFIX_PATHS=()
  25. OLDIFS="$IFS"
  26. { IFS=:
  27. for version in ${PYENV_VERSION}; do
  28. if [ "$version" = "system" ]; then
  29. if PYTHON_PATH="$(PYENV_VERSION="${version}" pyenv-which python 2>/dev/null)"; then
  30. PYENV_PREFIX_PATH="${PYTHON_PATH%/bin/*}"
  31. PYENV_PREFIX_PATH="${PYENV_PREFIX_PATH:-/}"
  32. else
  33. echo "pyenv: system version not found in PATH" >&2
  34. exit 1
  35. fi
  36. else
  37. PYENV_PREFIX_PATH="${PYENV_ROOT}/versions/${version}"
  38. fi
  39. if [ -d "$PYENV_PREFIX_PATH" ]; then
  40. PYENV_PREFIX_PATHS=("${PYENV_PREFIX_PATHS[@]}" "$PYENV_PREFIX_PATH")
  41. else
  42. echo "pyenv: version \`${version}' not installed" >&2
  43. exit 1
  44. fi
  45. done
  46. }
  47. IFS="$OLDIFS"
  48. OLDIFS="$IFS"
  49. { IFS=:
  50. echo "${PYENV_PREFIX_PATHS[*]}"
  51. }
  52. IFS="$OLDIFS"