核心
核心 asdf 命令列表很小,但可以促进很多工作流。
安装和配置
请查看 快速上手 了解更多详情。
Exec
asdf exec <command> [args...]执行当前版本的命令垫片。
Env
asdf env <command> [util]Info
asdf info用于打印操作系统、Shell 和 asdf 调试信息的辅助命令。在报告 bug 时需要共享这些信息。
Reshim
asdf reshim <name> <version>这将为某个包的当前版本重新创建垫片。默认情况下,垫片是在某个工具安装的过程中由插件创建。一些工具像 npm 命令行 允许全局安装可执行程序,比如使用 npm install -g yarn 命令安装 Yarn。因为这个可执行程序不是通过插件生命周期安装的,所以还没有对应的垫片存在。asdf reshim nodejs <version> 命令将会强制重新计算任何新可执行程序的垫片,类似 nodejs 的 versions 版本下的 yarn。
Shim-versions
asdf shimversions <command>列举为命令提供垫片的插件和版本。
例如,Node.js 附带了两个可执行程序,node 和 npm。当使用 asdf-nodejs 插件安装了这些工具的很多版本时,执行shimversions 命令会返回:
➜ asdf shimversions node
nodejs 14.8.0
nodejs 14.17.3
nodejs 16.5.0➜ asdf shimversions npm
nodejs 14.8.0
nodejs 14.17.3
nodejs 16.5.0更新
请使用与安装 asdf 相同的方法进行更新。asdf 的最新版本显示在本页面的右上角。
卸载
根据以下步骤卸载 asdf:
Bash & Git
- 在
~/.bashrc配置文件中移除生效asdf.sh和补全功能的行:
. "$HOME/.asdf/asdf.sh"
. "$HOME/.asdf/completions/asdf.bash"- 移除
$HOME/.asdf目录:
rm -rf "${ASDF_DATA_DIR:-$HOME/.asdf}"- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Bash & Git (macOS)
- 在
~/.bash_profile配置文件中移除生效asdf.sh和补全功能的行:
. "$HOME/.asdf/asdf.sh"
. "$HOME/.asdf/completions/asdf.bash"- 移除
$HOME/.asdf目录:
rm -rf "${ASDF_DATA_DIR:-$HOME/.asdf}"- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Bash & Homebrew
- 在
~/.bashrc配置文件中移除生效asdf.sh和补全功能的行:
. $(brew --prefix asdf)/libexec/asdf.sh
. $(brew --prefix asdf)/etc/bash_completion.d/asdf.bash补全功能可能已经如 Homebrew 的指南 那样配置了,因此请按照他们的指南找出要删除的内容。
- 用包管理器卸载:
brew uninstall asdf --force- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Bash & Homebrew (macOS)
如果你正在使用 macOS Catalina 以及更新版本,默认的 shell 已经变成了 ZSH。如果你在 ~/.bash_profile 文件中找不到任何配置,则可能位于 ~/.zshrc 中。在这种情况下,请按照 ZSH 指南进行操作。
- 在
~/.bash_profile配置文件中移除生效asdf.sh和补全功能的行:
. $(brew --prefix asdf)/libexec/asdf.sh
. $(brew --prefix asdf)/etc/bash_completion.d/asdf.bash补全功能可能已经如 Homebrew 的指南 那样配置了,因此请按照他们的指南找出要删除的内容。
- 用包管理器卸载:
brew uninstall asdf --force- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Bash & Pacman
- 在
~/.bashrc配置文件中移除生效asdf.sh和补全功能的行:
. /opt/asdf-vm/asdf.sh- 用包管理器卸载:
pacman -Rs asdf-vm- 移除
$HOME/.asdf目录:
rm -rf "${ASDF_DATA_DIR:-$HOME/.asdf}"- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Fish & Git
- 在
~/.config/fish/config.fish配置文件中移除生效asdf.fish的行:
source ~/.asdf/asdf.fish以及使用以下命令移除补全功能:
rm -rf ~/.config/fish/completions/asdf.fish- 移除
$HOME/.asdf目录:
rm -rf (string join : -- $ASDF_DATA_DIR $HOME/.asdf)- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Fish & Homebrew
- 在
~/.config/fish/config.fish配置文件中移除生效asdf.fish的行:
source "(brew --prefix asdf)"/libexec/asdf.fish- 用包管理器卸载:
brew uninstall asdf --force- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Fish & Pacman
- 在
~/.config/fish/config.fish配置文件中移除生效asdf.fish的行:
source /opt/asdf-vm/asdf.fish- 用包管理器卸载:
pacman -Rs asdf-vm- 移除
$HOME/.asdf目录:
rm -rf (string join : -- $ASDF_DATA_DIR $HOME/.asdf)- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Elvish & Git
- 在
~/.config/elvish/rc.elv配置文件中移除使用asdf模块的行:
use asdf _asdf; var asdf~ = $_asdf:asdf~
set edit:completion:arg-completer[asdf] = $_asdf:arg-completer~以及使用以下命令卸载 asdf 模块:
rm -f ~/.config/elvish/lib/asdf.elv- 移除
$HOME/.asdf目录:
if (!=s $E:ASDF_DATA_DIR "") { rm -rf $E:ASDF_DATA_DIR } else { rm -rf ~/.asdf }- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Elvish & Homebrew
- 在
~/.config/elvish/rc.elv配置文件中移除使用asdf模块的行:
use asdf _asdf; var asdf~ = $_asdf:asdf~
set edit:completion:arg-completer[asdf] = $_asdf:arg-completer~以及使用以下命令卸载 asdf 模块:
rm -f ~/.config/elvish/lib/asdf.elv- 用包管理器卸载:
brew uninstall asdf --force- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"Elvish & Pacman
- 在
~/.config/elvish/rc.elv配置文件中移除使用asdf模块的行:
use asdf _asdf; var asdf~ = $_asdf:asdf~
set edit:completion:arg-completer[asdf] = $_asdf:arg-completer~以及使用以下命令卸载 asdf 模块:
rm -f ~/.config/elvish/lib/asdf.elv- 用包管理器卸载:
pacman -Rs asdf-vm- 移除
$HOME/.asdf目录:
if (!=s $E:ASDF_DATA_DIR "") { rm -rf $E:ASDF_DATA_DIR } else { rm -rf ~/.asdf }- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"ZSH & Git
- 在
~/.zshrc配置文件中移除生效asdf.sh和补全功能的行:
. "$HOME/.asdf/asdf.sh"
# ...
fpath=(${ASDF_DIR}/completions $fpath)
autoload -Uz compinit
compinit或者 ZSH 框架插件(如果用了的话)
- 移除
$HOME/.asdf目录:
rm -rf "${ASDF_DATA_DIR:-$HOME/.asdf}"- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"ZSH & Homebrew
- 在
~/.zshrc配置文件中移除生效asdf.sh的行:
. $(brew --prefix asdf)/libexec/asdf.sh- 用包管理器卸载:
brew uninstall asdf --force && brew autoremove- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"ZSH & Pacman
- 在
~/.zshrc配置文件中移除生效asdf.sh的行:
. /opt/asdf-vm/asdf.sh- 用包管理器卸载:
pacman -Rs asdf-vm- 移除
$HOME/.asdf目录
rm -rf "${ASDF_DATA_DIR:-$HOME/.asdf}"- 执行以下命令移除
asdf所有配置文件:
rm -rf "$HOME/.tool-versions" "$HOME/.asdfrc"恭喜你完成了 🎉