SunOS 5.10 中的提示符“-bash-3.2$”与“bash-3.2$”

SunOS 5.10 中的提示符“-bash-3.2$”与“bash-3.2$”

当我登录到运行 SunOS 5.10 的服务器时,我的提示符最初是“-bash-3.2$”

然后,当我运行以下命令时,我可以看到键入后提示符略有不同bash(不再以破折号开头),但 echo $SHELL 给出了相同的结果。

-bash-3.2$ echo $SHELL
/bin/bash
-bash-3.2$ bash
bash-3.2$ echo $SHELL
/bin/bash

这意味着什么?它有什么影响?

答案1

bash下的PS1默认值为\s-\v\$

  • \s替换为您的 shell 的名称 ($0)
  • \v是bash版本

领先-只是因为第一个 shell 是登录 shell。该破折号用于区分登录 shell 和其他 shell。第二个 shell 不是登录 shell,因此没有该前缀。

PS1在您的情况下保持这样,因为启动时来源的脚本都不会覆盖它。

这些提示没有任何暗示。

顺便说一句,该操作系统通常被称为“Solaris 10”,而不是“SunOS 5.10”。

答案2

bash 手册中对此进行了解释调用 Bash部分:

A登录shell 是参数零的第一个字符是“-”的 shell,或者是使用选项调用的 shell --login

登录 shell 调用不同的启动文件

相关内容