gpt4 book ai didi

Bash 检查 nvm 是否安装

转载 作者:行者123 更新时间:2023-12-03 08:56:41 25 4
gpt4 key购买 nike

如何确定 bash 中是否安装了 nvm(Node Version Manager)?

我已经将它安装在我的系统中,但我无法制作任何可以检测它的 bash 脚本。我正在制作一个依赖于 nvm 的脚本,该脚本应该由其他人使用,因此我想在未安装时输出,如果未安装则退出..

这不起作用:https://stackoverflow.com/a/26759734/846348它说未安装 nvm,但 bash 脚本可以使用 nvm..

如果它至少支持 Mac Terminal、Mac iTerm 和带有 Linux shell 的 Windows,那就太好了。

最佳答案

nvm install script检查 nvm 是否已安装,大致使用以下逻辑:

if [ -d "${HOME}/.nvm/.git" ]; then echo "nvm installed"; else echo "nvm not installed"; fi

这只是检查目录 ~/.nvm/.git 是否存在。

如果目录~/.nvm/.git不存在,要退出失败,您可以使用:

if [ ! -d "${HOME}/.nvm/.git" ]; then exit; fi

检查是否使用 Makefile 安装了 nvm

NVM_EXISTS := $(shell if [ -d "${HOME}/.nvm/.git" ]; then echo "nvm installed"; fi)

.PHONY: check
check:
ifndef NVM_EXISTS
$(error Please install nvm: https://github.com/nvm-sh/nvm)
endif

nvm install.sh 的注意事项

实际的安装脚本使用以下函数来确定 nvm 安装目录(而不是假设 ${HOME}/.nvm)。但如果您使用默认位置 ${HOME}/.nvm,则可以跳过这些检查。

nvm_default_install_dir() {
[ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm"
}

nvm_install_dir() {
if [ -n "$NVM_DIR" ]; then
printf %s "${NVM_DIR}"
else
nvm_default_install_dir
fi
}

关于Bash 检查 nvm 是否安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54821743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com