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シェル名($0)に変更してください。
  • \vバッシュ版ですか?

-最初のシェルはログインシェルなので、先にあります。ダッシュは、ログインシェルを他のシェルと区別するために使用されます。 2番目のシェルはログインシェルではないため、このプレフィックスはありません。

PS1起動時に提供されるスクリプトのどれもそれを上書きしませんので、あなたの場合はこのようにしてください。

このヒントは何の意味もありません。

ところで、このオペレーティングシステムはしばしば「SunOS 5.10」ではなく「Solaris 10」と呼ばれます。

答え2

これはbashのマニュアルで説明されていますバッシュに電話する部分:

ログインシェルは、引数0の最初の文字が "-"のシェルまたはoptionsで呼び出されるシェルです--login

ログインシェルの呼び出しその他の起動ファイル

関連情報