我正在使用z Shell (zsh)而不是默认的bash,发生了一些错误,以至于所有以前工作的命令都不再被识别:

    ls
    zsh: command not found: ls

    open -e .zshrc
    zsh: correct 'open' to '_open' [nyae]? 

我不知道如何重置zsh或如何修复这个。下面是$PATH变量的内容:

    echo $PATH
    /Users/Malloc/bin/Sencha/Cmd/3.1.2.342:/usr/local/bin/mate

我无法打开.bash_profile文件也不能打开.zshrc文件,似乎唯一的解决方案是重置zsh。什么好主意吗?

编辑:

我甚至尝试重置zsh在这个线程中指出,但总是得到命令不发现错误:

    exec zsh
    zsh: command not found: zsh

到底发生了什么?为什么所有命令都丢失了?

对于重置shell,我只是在.zshrc中添加了这个,工作正常

eval "$(rbenv init -)"
export PATH="$PATH:$HOME/.rvm/bin"
export PATH="/opt/homebrew/bin:$PATH"
export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/2.6.3p62/bin:$PATH"

当前回答

可以在/usr/local/bin/目录下创建符号链接

sudo ln -s $HOME/.composer/vendor/bin/homestead /usr/local/bin/homestead

其他回答

对于macOS,必须添加源代码$HOME/。Bash_profile到.zshrc文件。

$ code ~/。zshrc(在VSCode上打开。zshrc文件) 添加源$HOME/。Bash_profile放在文件顶部并保存它。 $ source ~/。刷新。ZSHRC。

别忘了刷新。

在我的情况下,我使用小写的变量路径!

所以在/etc/profiled我正在运行一个使用变量路径的脚本。因为它是小写的,我从来没有想过它会混淆实际的变量PATH。注意,不要在脚本上使用变量path。

可以在/usr/local/bin/目录下创建符号链接

sudo ln -s $HOME/.composer/vendor/bin/homestead /usr/local/bin/homestead

如果您使用的是macOS,请尝试执行此步骤

如果您编写代码在~/中导出PATH。bash_profile则不要错过步骤1

步骤1:

确保在终端打开时加载.bash_profile,检查~/。Bashrc或~/。ZSHRC(如果你用的是zsh),有没有类似的源代码~/。Bash_profile ?如果没有,可以手动添加添加源代码~/。Bash_profile在这里 另外,确保这段代码在你的.bash_profile > export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin如果没有,把这段代码添加进去

9月2:

确保“Visual Studio Code”。应用程序是在正确的地方> "/应用程序"或"/Users/$(whoami)/应用程序" 删除旧安装的vs-code PATH rm -rf /usr/local/bin/code 打开“Visual Studio Code.app” CMD+Shift+P,然后选择“Shell命令:在PATH中安装“code”命令” 重新启动你的Mac并通过运行这段代码-v来检查,它应该可以工作

当我在我的ubuntu上安装ZSH时,我遇到了类似的问题,当我尝试执行节点或其他命令时,我得到了错误ZSH:命令未找到节点。

我的解决方案是打开我的~/。ZSHRC文件,并在上面写下面的代码:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

然后我又关闭了我的终端,就这样。