在脚本中永久切换到 zsh,无需成为 root 且无需输入密码

Mat*_*der 5 linux shell users non-root-user

有没有什么方法可以在chsh -s /bin/zsh不需要 root 的情况下运行并且不需要输入密码?我想将其放入一个不由 root 调用的非交互式脚本中。

gle*_*man 4

如果您没有更改登录 shell 的权限,您可以告诉 bash (我假设 bash 是您的登录 shell)将其替换为 zsh。在您的 中~/.bash_login,添加以下行:

exec /bin/zsh --login
Run Code Online (Sandbox Code Playgroud)

  • 哇,小心点!对于某些发行版或桌面环境(我完全不记得具体情况),如果你这样做,你会发现你无法在 X 下登录(因为 `/etc/?dm/Xsession` 调用 `bash - -登录`)。 (3认同)