#!/usr/bin/env bash set -e [ -n "$RBENV_DEBUG" ] && set -x print_set_version() { echo " should be a string matching a Ruby version known by rbenv." local versions="$(rbenv-versions --bare)" if [ -z "$versions" ]; then echo "There are currently no Ruby versions installed for rbenv." else echo "The currently installed Ruby versions are:" echo "$versions" | sed 's/^/ /' fi echo echo "The special version string 'system' will use your default system Ruby." } case "$1" in "") echo "usage: rbenv [] Some useful rbenv commands are: commands List all commands rehash Rehash rbenv shims (run this after installing binaries) global Set or show the global Ruby version local Set or show the local directory-specific Ruby version shell Set or show the shell-specific Ruby version version Show the current Ruby version versions List all Ruby versions known by rbenv See 'rbenv help ' for more information on a specific command. For more information, see: https://github.com/sstephenson/rbenv#readme" ;; global) echo "usage: rbenv global Sets the global Ruby version. You can override the global version at any time by setting a directory-specific version with \`rbenv local' or by setting the RBENV_VERSION environment variable. $(print_set_version)" ;; local) echo "usage: rbenv local rbenv local --unset Sets the local directory-specific Ruby version by writing the version name to a file named '.rbenv-version'. When you run a Ruby command, rbenv will look for an '.rbenv-version' file in the current directory and each parent directory. If no such file is found in the tree, rbenv will use the global Ruby version specified with \`rbenv global', or the version specified in the RBENV_VERSION environment variable. $(print_set_version)" ;; shell) echo "usage: rbenv shell rbenv shell --unset Sets a shell-specific Ruby version by setting the 'RBENV_VERSION' environment variable in your shell. This version overrides both project-specific versions and the global version. $(print_set_version)" ;; *) echo "No command arguments needed or invalid/undocumented command." esac