
PS1プロンプトを次に設定しようとしています。
/usr/local/src mario
だから私は.bash_profileで次のコードを使用しました。
export PS1=" \w \u\[$(tput sgr0)\]"
私は最終的に:
\w \u\[$(tput sgr0)\]
アイデアはありますか?
文字列連結を使用して必要なものを取得できますが、これを行う必要があるのは奇妙です。
答え1
あなたのシェルはおそらくbash
。に変更してくださいchsh
。
また、一部の値には問題があります$PS1
。
PS1=" \w \u\[$(tput sgr0)\]"
$(...)
設定すると評価されますが、PS1
一度だけ実行されます。tput sgr0
プロンプトが表示されるたびに実行するには、単一引用符を使用します。
PS1='\w \u\[$(tput sgr0)\] \$ '
(また、値の先頭から最後に初期スペースを移動し、\$
それを追加してプロンプトとコマンドラインを読みやすくしました。
設定することもできます。
PS1="\w \u \$ "
その後、設定
PROMPT_COMMAND="tput sgr0"
各プロンプトが表示される前に実行されますtput sgr0
(何をしているのかわからないので、これが意味があるかどうかはわかりませんが、施設はそこにあります)。
現在、シェルセッションに対してのみ設定するのは妥当であるため、エクスポートやPS1
エクスポートは不要です。PROMPT_COMMAND