Mac下zsh版本更新后報錯 login: /usr/local/Cellar/zsh/5.7.1/bin/zsh-5.7.1: No such file or directory 解決辦法


事件發生前要

今天真是閑的肉疼更新了一下執行完 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文件夾下只有 5.8 文件夾

回想一下我安裝 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 又回來了,愉快解決!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM