n 在 Linux 中 install/switch 节点失败?

n failed to install/switch node in Linux?

我正在尝试使用 n 在运行中安装/切换节点版本,因为不同的构建需要不同版本的节点。 n 可以下载指定的版本,但无法安装到 /usr/bin/node 并且那里仍然是旧版本。

05-Apr-2021 11:46:27       installed : v10.16.0 to /usr/local/bin/node
05-Apr-2021 11:46:27          active : v8.16.1 at /bin/node

当我 运行 node --version 命令时 returns 旧版本 8.16.1 显然,n 将节点安装到不同的位置。有没有办法解决这个问题?提前谢谢你

N 未安装到 /bin,因此二进制文件的位置已更改。

tl;博士:

重置$PATHPATH="$PATH"

什么?

在 *NIX 系统上,有许多二进制位置:/bin/usr/bin/usr/local/bin,甚至 /home/USER/.local/bin(如果已配置)。

为什么?

所有二进制文件夹使组织更容易。

为什么 n 更改了位置?

当然要符合标准。 /usr[/local]/bin 是包安装二进制文件的传统位置。

为什么我的 shell 没有看到新的二进制文件?

Shell 使用“散列 table”,因此它们不需要一次又一次地查看 $PATH - 等等,什么是 $PATH

什么是 PATH

PATH 是一个 : 分隔的位置列表,用于查找要执行的二进制文件。例如,我的是这样的:/usr/local/opt/coreutils/libexec/gnubin:/home/badboyhalocat/node_installs/bin:/home/badboyhalocat/.config/yarn/global/node_modules/.bin:/home/badboyhalocat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

shell 使用它来查找在哪里可以找到 运行 的代码。

解决这个问题

只需重置您的 PATH:PATH="$PATH"