符号链接及其目标产生不同的行为?

符号链接及其目标产生不同的行为?

当我运行时npm,我得到以下输出:

-bash: /Users/me/.nvm/versions/node/v10.16.3/bin/npm: No such file or directory

当我运行时which -a npm,我得到以下输出:

/usr/local/bin/npm

当我运行时ls -a /usr/local/bin/npm,我得到以下输出:

lrwxr-xr-x  1 root  admin  38 Jan 29 14:02 /usr/local/bin/npm -> ../lib/node_modules/npm/bin/npm-cli.js

在这一点上,我理解正在发生的事情的能力已经脱离了正常轨道。如果我没记错的话,那就告诉我我有一个到 的符号链接/usr/local/lib/node_modules/npm/bin/npm-cli.js。所以我进入该目录并运行./npm-cli.js,它工作正常。我期望它给出与上面的初始命令相同的输出,这似乎与它有符号链接,但事实并非如此。它运行正常。

为什么这些会有不同的行为?我缺少什么?我正在尝试排除故障,以便我的npm工作再次正常。

相关内容