出现原因:sudo有时候会出现找不到命令,而明明PATH路径下包含该命令,让人疑惑。其实出现这种情况的原因,主要是因为当 sudo以管理权限执行命令的时候,linux将PATH环境变量进行了重置,当然这主要是因为系统安全的考虑,但却使得sudo搜索的路径不是我们想要的PATH变量的路径,当然就找不到我们想要的命令了
解决办法
建立软连接的方式
# 把原始路径建立在 /usr/bin/ 的目录下(npm同理)
sudo ln -s /usr/local/node/bin/npm /usr/bin/npm
sudo ln -s "原始路径" "/usr/bin/ 的目录下"