我正在使用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"

当前回答

我的解决方案:

更改回bash:

source .bashrc

下一个:

echo $PATH

复制:

/home/frank/.asdf/shims:/home/frank/....

回到zsh:

source .zsh

打开. zshrc:

粘贴:

 export PATH=/home/frank/.asdf/shims:/home/frank/....

重启终端

其他回答

在我的例子中,注释代码在第一行就没有注释是错误的。

# If you come from bash you might have to change your $PATH.

散列被移除。添加回去后工作很好。

我只是把这个贴在这里,所以有人可能会觉得这很有用。因为它只是行首,可能会像我那样被错误删除。在尝试了几种方法后,似乎没有解决方案。

适用于macOS 12 Monterey:

您可以手动编辑.zshrc文件,并恢复您对PATH所做的更改。

打开TextEdit应用程序。 进入文件夹:cmd + shift + g 类型:~ / 查看隐藏文件:cmd + shift +。 选择:. zshrc 恢复更改,保存文件,并重新打开终端。

我的解决方案:

更改回bash:

source .bashrc

下一个:

echo $PATH

复制:

/home/frank/.asdf/shims:/home/frank/....

回到zsh:

source .zsh

打开. zshrc:

粘贴:

 export PATH=/home/frank/.asdf/shims:/home/frank/....

重启终端

您需要创建.zprofile文件并写入其中

cd /
touch .zprofile
vim .zprofile
//Put Your Path

退出并保存 然后在shell中运行这段代码

 source ~/.zshrc

重新启动终端对我来说也很有用。