AIX - 如何将用户 shell 更改为 bash?

Mer*_*cer 2 unix aix

我想知道如何bash在登录 AIX 服务器时自动运行。如何在不必bash每次登录 AIX 服务器时都键入的情况下执行此操作?

Tho*_*key 7

您通常会运行chsh(参见例如更改 IBM AIX 上的 Shell)。但是,如果bash这些文件中未列出,则您可能会中断登录:

  • /etc/shells
  • /etc/security/login.defs

作为一种解决方法,您可以让您的 shell 的登录初始化脚本bash直接运行。csh例如,如果您的 shell 是通过修改.login.

如果您的登录 shell 是ksh,那就有点难了:AIX 的 ksh 使用.profile(被其他 shell 使用),并且不设置特殊变量。这样的事情可能对你有用,在.profile

[ $SHLVL = 1 ] && exec bash
Run Code Online (Sandbox Code Playgroud)

ksh 和 bash 都设置了这个变量;它应该是1您刚刚登录时的状态,并在您转移到 bash 时增加。

在尝试这样的事情时,重要的是在远程机器有一个可用的 shell ,并使用不同的连接测试登录,以防您的编辑出现问题。