事件发生前要
今天真是闲的肉疼更新了一下执行完 brew update
安装一个scrcpy,结果致使 zsh 也被更新由原来的 5.7.1 更新至 5.8,然后我就悲催了打开终端死活都是如下报错
Last login: Sat Sep 5 00:22:07 on ttys000
login: /usr/local/Cellar/zsh/5.7.1/bin/zsh-5.7.1: No such file or directory
[进程已完成]
解决办法
一开始我是懵逼的状态,因为现在这种情况我都没有命令行可以用。发生这种情况,只能求助百度怎么定位该文件夹。⌘command+⇧shift+G
快捷键可以快速定位到文件夹。
果然发现 /usr/local/Cellar/zsh/
文件夹下没有 5.7.1 这个文件夹了。取而代之的是 5.8
这个文件夹,我想一定是我用 brew 安装软件的时候顺带也把zsh 也给我更新了,哎,我真是谢谢您哦!!
回想一下我安装 zsh 的时候有记备 Mac 终端窗口配置 oh-my-zsh,这里面有我怎么切换到 zsh 下的。既然如此就再切换到当前 5.8 版本下不就行了吗?
可是如何执行命令呢?因为此时的终端打开因为找不到正确的路径就报错终止进程的,幸好在终端窗口下 ⇧shift+⌘command+N
快捷键可以新建命令(不要勾选「在 shell 中运行命令」)依次参考当初切换命令再修改一遍。
sudo vi /etc/shells
修改其中配置的 zsh 路径「/usr/local/Cellar/zsh/5.7.1/bin/zsh-5.7.1」为当下正确的路径「/usr/local/Cellar/zsh/5.8/bin/zsh-5.8」如下所示
# List of acceptable shells for chpass(1).
# Ftpd will not allow users to connect who are not using
# one of these shells.
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
# /bin/zsh
# /usr/local/Cellar/zsh/5.7.1/bin/zsh-5.7.1
/usr/local/Cellar/zsh/5.8/bin/zsh-5.8
~
~
~
~
:wq
将当前 bash 终端切换为5.8 这个 zsh, 使用 chsh -s 路径
然后输入密码,重启就行了。我也不确定是不是必需要执行这一步,反正我执行一遍也无可厚非
chsh -s /usr/local/Cellar/zsh/5.8/bin/zsh-5.8
然后我的 zsh 又回来了,愉快解决!!!