OS X 终端在打开时结束会话:权限被拒绝

OS X 终端在打开时结束会话:权限被拒绝

我在 MacOS X 10.7.4 上使用终端时遇到问题。我知道问题出在哪里,但我不知道如何解决:

昨天,我安装了 fish-shell 作为 shell 的替代品。按照安装说明,我最终输入了以下命令:

chsh -s /usr/local/bin/fish

我注意到我必须做一个:

sudo bash

让它工作。一旦完成,我就退出了。

今天,我尝试运行终端并看到以下消息:

Last login: Wed Jun 27 12:38:01 on ttys000
login: /usr/local/bin/fish: Permission denied

[Opération terminée]

(是的,我是法国人,这解释了我糟糕的英语。)我无法输入任何命令,因为我无法访问终端。我尝试使用 iTerm2,但问题相同。

在 Terminal/iTerm2 的默认配置文件中(嗯,在 UI 中)启动时没有设置任何命令。

我怎样才能夺回权力?

谢谢。

答案1

在 中System Preferences,打开Users & Groups部分,右键单击您的用户并选择Advanced Options。您可以Login shell在那里更改设置。

答案2

如果你没有有效的 shell,你可以使用Shell > 新命令并输入不同的 shell 的名称,例如bash,终端将使用该 shell 而不是默认的 shell(确保未选择“在 shell 内运行命令”)。

然后,您可以使用该 shell 来解决其他 shell 的问题,或者将默认 shell 改回sudo chsh -s /bin/bash $LOGNAME(或您喜欢的任何 shell)。

答案3

首先使用Shell > New Command然后使用另一个 shell(例如 C shell csh);然后使用以下命令更改权限:

sudo chmod +x  /usr/local/bin/fish

相关内容