Fangjian

FE / 生活是一种态度

导航
 » 主页
 » 项目
 » Github
 » 关于我

zsh command not found node [操作系统]

17 Jul 2018 » 操作系统

ma terminal 终端,从bash模式切换至zsh模式(前提是zsh相关环境都已经安装)出现 zsh: command not found: node,找了不少资料才解决,主要问题在于不了解 .bashrc.bash_profile的区别

原则上来说这就是一个切换脚本语言后导致环境变量也跟着切换,之前的安装应用不能通过 terminal 不能使用。

说明:zsh 脚本 确实比 bash脚本好用,而且功能强大。但里面也存在一些坑,原因是 zsh 使用的是仿真模式兼容 bash? 参考


Google 找到解决方案

最终参考:https://stackoverflow.com/questions/33935281/command-not-found-oh-my-zsh

在 .zshrc 文件中添加

source ~/.bash_profile

但是并没有效果….. 怀疑 ~~~~


继续YY

科普一下

~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

此文件类似于/etc/profile,也是需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效。

~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下)

结合报错解决问题

不管是 node 还是 nvm 都是属于用户独有,并不是每个用户都拥有的。

so:

在 .szhrc 文件中添加

source ~/.bashrc

总结:得根据自己的实际场景去解决问题