ken*_*enn 8 paths update-alternatives
我在编译或运行应用程序时经常遇到与路径相关的问题。我的系统中有两个版本的节点,一个来自官方 repo,另一个从源代码手动安装。今天想编译括号,运行的npm install
时候要求我用1.4.20等以后的版本。它的默认版本在/usr/bin/npm
其中不起作用。手动安装的在/usr/local/bin/npm
有没有办法 /usr/local/bin/npm
使用update-alternatives
或其他方法作为默认路径?
例如,您可以设置默认文本编辑器
sudo update-alternatives --config editor
Run Code Online (Sandbox Code Playgroud)
我已经找到了如何做到这一点。起初我检查了默认路径 npm
是旧版本(1.3.10)中的/usr/bin/npm
,我注意到它是一个符号链接, /usr/share/npm/bin/npm-cli.js
我删除了它
sudo unlink /usr/bin/npm
Run Code Online (Sandbox Code Playgroud)
然后我尝试了以下命令
sudo update-alternatives --install /usr/bin/npm npm /usr/local/bin/npm 10
sudo update-alternatives --install /usr/bin/npm npm /usr/share/npm/bin/npm-cli.js 20
Run Code Online (Sandbox Code Playgroud)
现在我可以使用它们轻松地在它们之间切换
sudo update-alternatives --config npm
Run Code Online (Sandbox Code Playgroud)
它运作良好