我想将 Terminator 的默认 shell 更改为 zsh。在 中,/etc/passwd/
我将默认 shell 更改为/bin/zsh
。此设置会更改 LXTerminal(Lubuntu 上的默认终端)中的默认 shell,但不会更改 Terminator 中的默认 shell。所以我尝试了chsh -s /bin/zsh
,但这也不起作用。
终结者文档说:
我如何更改我的默认 shell?
Terminator 将始终启动由 SHELL 环境变量指定的 shell。(如果未设置 SHELL 环境变量,它将返回到 /bin/sh。)您可以简单地影响 Terminator 的环境,但最好的解决方案是告诉您的操作系统您想要哪个 shell,它将确保为所有应用程序(而不仅仅是 Terminator)正确设置 SHELL。有关如何更改默认 shell 的详细信息,请参阅操作系统的文档。
所以我期望我的尝试能够成功,但结果却不是这样。我该如何更改 Terminator 中的默认 shell。
答案1
使用 `chsh` 来更改 shell
您可以使用chsh
来更改默认 shell。运行此命令将要求输入 shell 的完整路径。
您还可以运行
chsh -s <shell 路径>
直接更改外壳。
更改终结者偏好设置
您也可以直接更改终结者偏好设置。
- 打开终结者。
- 右键单击“终结者”,然后选择优先。
- 去个人资料>命令。
- 查看以登录 shell 身份运行命令,运行自定义命令而不是我的 shell,然后输入shell的地址。
- 关闭对话框。
答案2
重启后 Terminater 使用 zsh。我填写了错误报告。
答案3
这是一个古老的问题,但经过一番争论之后:
总结:Terminator 读取$SHELL
环境变量。如果您处于图形 X 会话中,则此变量在您登录时设置,并且直到您登录后才会重置再次,即使在运行之后chsh
。
如果您切换到文本终端并登录,您会看到您的设置chsh
已经生效。一旦您退出并重新登录,设置$SHELL
就会重置为您的 shell 所处的位置/etc/passwd
。