#!/bin/bash -e read_version_file() { egrep -m 1 '[^[:space:]]' "$1" } find_version_file() { local root="$(pwd)" while [ -n "$root" ]; do if [ -e "${root}/.rbenv-version" ]; then echo "${root}/.rbenv-version" return 0 fi root="${root%/*}" done return 1 } find_default_version_file() { local default_path="$HOME/.rbenv/default" if [ -e "$default_path" ]; then echo "$default_path" return 0 fi return 1 } if [ -z "$RBENV_VERSION" ]; then RBENV_VERSION_FILE="$(find_version_file || find_default_version_file || true)" if [ -n "$RBENV_VERSION_FILE" ]; then RBENV_VERSION="$(read_version_file "$RBENV_VERSION_FILE")" else echo "rbenv: no default version specified" >&2 exit 1 fi fi RBENV_VERSION_PATH="${HOME}/.rbenv/versions/${RBENV_VERSION}" if [ -d "$RBENV_VERSION_PATH" ]; then echo "$RBENV_VERSION" else echo "rbenv: version \`$RBENV_VERSION' is not installed" >&2 exit 1 fi