尝试退出终端仿真器时出错

尝试退出终端仿真器时出错

背景

zsh默认运行,并且每天大部分时间都登录到终端。我的工作站和我每天交互的所有服务器都是基于 Linux 的,我根据机器的不同,在我的所有帐户上使用zshbash。我更喜欢使用键盘命令而不是鼠标,所以exit当我不再需要终端窗口时,我通常会键入以关闭它。

问题

关闭终端窗口exit从未失败过,直到今天。当我尝试关闭窗口时,我收到此错误:

% exit
exit:55: maximum nested function level reached

我认为我理解错误本身,即终端不知何故经历了非终止递归调用。但我不明白exit这是怎么造成的,以及我做了什么才导致这种情况发生。

我是如何来到这里的

我打开此窗口以进入服务器。我在那里做了一些工作,然后退出该会话。然后我wget下载了一个 ISO 映像,并将dd其写入外部硬盘驱动器。完成后,我键入exit以关闭终端窗口,并收到上述错误。

采取的故障排除步骤

  1. 我更新了我的系统,看看是否是这个问题。

  2. 我搜索了其他遇到此错误的人,但它们似乎都与实际的递归调用有关,而不是它们自己执行的内置命令。

  3. 我打开了一个新的终端窗口,exit按照提示输入内容,没有任何问题。

  4. 我再次打开了一个新的终端窗口,进入我之前连接的同一服务器,稍微探索了一下,exit在提示符下输入,没有任何问题。

  5. 我再次打开了一个新的终端窗口,再次进入同一个服务器,退出,然后我拉下与之前相同的 ISO 映像,将其写入/dev/null/exit在提示符下输入,没有任何问题。

我不知道第一个终端发生了什么。当然我可以关闭窗口,但我不明白为什么会发生这种情况。有什么帮助吗?

相关内容