Added --nosystem argument

Added --nosystem argument to skip the system environment when searching for an executable.
This commit is contained in:
Anton Petrov 2021-02-22 12:21:02 +03:00 committed by GitHub
parent 2c02f4f0f8
commit f31a06dc19
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -2,10 +2,12 @@
#
# Summary: Display the full path to an executable
#
# Usage: pyenv which <command>
# Usage: pyenv which <command> [--nosystem]
#
# Displays the full path to the executable that pyenv will invoke when
# you run the given command.
# Use --nosystem argument in case when you don't need to search command in the
# system environment.
#
set -e
@ -16,6 +18,12 @@ if [ "$1" = "--complete" ]; then
exec pyenv-shims --short
fi
if [ "$2" = "--nosystem" ]; then
system=""
else
system="system"
fi
remove_from_path() {
local path_to_remove="$1"
local path_before
@ -39,7 +47,7 @@ OLDIFS="$IFS"
IFS=: versions=(${PYENV_VERSION:-$(pyenv-version-name)})
IFS="$OLDIFS"
for version in "${versions[@]}" "system"; do
for version in "${versions[@]}" "$system"; do
if [ "$version" = "system" ]; then
PATH="$(remove_from_path "${PYENV_ROOT}/shims")"
PYENV_COMMAND_PATH="$(command -v "$PYENV_COMMAND" || true)"