デフォルトプロンプトを保存して復元する方法(PS1が定義されていない場合)?

デフォルトプロンプトを保存して復元する方法(PS1が定義されていない場合)?

私が知っている限り、私が作業している共有クラスタでは、新しいアカウントの設定にプロンプ​​ト設定が含まれていません。特にPS1設定はありません。ただし、ユーザーが新しいアカウントにログインすると、ユーザー名と現在のディレクトリのデフォルト名を含むかなり珍しいプロンプトが表示されます。

必要ORIGINAL_PS1に応じて復元できるように、このプロンプトを自分の好みのプロンプトに置き換える前に(たとえば、環境変数に)保存したい1 。

現在のプロンプトからプロンプト定義を抽出する方法は?

私は主にこの質問に対する答えに興味がありますbash。しかし、同様の内容があればzsh教えてください。


1私はデフォルトのプロンプトを好みますが、日常的な使用には " git-aware"プロンプトを好みます。つまり、後者が99.999%の場合は非常に役に立つと思いますが、時にはプロンプト生成が許容できないほど遅くなる非常に混乱したリポジトリを見ることができますcdgitそのようなまれなケースでは、走ることができるようにしたいですexport PS1=$ORIGINAL_PS1

ベストアンサー1

ORIGINAL_PS1=$PS1デフォルトのプロンプト変数の値が新しい変数に保存されます。

このPS1変数はエクスポートされないシェル変数です。つまり、子プロセスから継承された環境変数ではありません。

シェルにzsh「正しいデフォルトプロンプト」を追加保存する必要があるかもしれませんRPS1。デフォルトのプロンプトは、と同様にからPS1呼び出されます。zshbash

おすすめ記事