Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

47 rader
837 B

  1. #!/usr/bin/env bash
  2. # Summary: List hook scripts for a given pyenv command
  3. # Usage: pyenv hooks <command>
  4. set -e
  5. [ -n "$PYENV_DEBUG" ] && set -x
  6. # Provide pyenv completions
  7. if [ "$1" = "--complete" ]; then
  8. echo exec
  9. echo rehash
  10. echo which
  11. exit
  12. fi
  13. PYENV_COMMAND="$1"
  14. if [ -z "$PYENV_COMMAND" ]; then
  15. pyenv-help --usage hooks >&2
  16. exit 1
  17. fi
  18. resolve_link() {
  19. $(type -p greadlink readlink | head -1) $1
  20. }
  21. realpath() {
  22. local cwd="$(pwd)"
  23. local base="$(basename $1)"
  24. local path="$1"
  25. while [ -n "$path" ]; do
  26. cd "${path%/*}"
  27. local name="${path##*/}"
  28. path="$(resolve_link "$name" || true)"
  29. done
  30. echo "$(pwd)/$base"
  31. cd "$cwd"
  32. }
  33. shopt -s nullglob
  34. for path in ${PYENV_HOOK_PATH//:/$'\n'}; do
  35. for script in $path/"$PYENV_COMMAND"/*.bash; do
  36. echo $(realpath $script)
  37. done
  38. done
  39. shopt -u nullglob