Bashで次のことをしたいと思います。
しかし、私が試したすべての結果は、PWD
ターミナルを起動した最初のディレクトリに固定されました。奇妙なことに、PS1
現在のgitブランチをプロンプトに入れて、常に更新する機能もあり、なぜ停止したのかPWD
迷います。私の現在のヒントここところで。
\w
交換しようとしましたが、$(pwd|grep --color=always /)
詰まっています。また、これを行うためにbash文字列置換を試しましたが、そのうちの1つも機能しませんでした。${PWD////$bldred/$bldblu}
($bldredと$bldblueはプロンプト.shで定義されています。)
答え1
プロンプトに動的変数を含めるときは、それを引用する必要があります。
PROMPT_COMMAND 項目の一部をよく理解していません。PS1='${PWD////'"$bldred/$bldblue"'} \$'
自分で試してみて、機能していることを確認してください。
答え2
スクリプトの最後の部分:
case "$TERM" in
xterm*|rxvt*)
PS1=...
...
設定すると役に立ちません$PROMPT_COMMAND
。バージョンは$PS1
一度だけ実行されます。したがって、スクリプトを初めて実行した後、タイトルの更新は表示されません。$PROMPT_COMMAND
他のすべてと一緒にタイトルの変更を追加する必要があります。
switch
実際のポイントに移動
if [ "$color_prompt" = yes ]; then
そしてその上にさまざまなバージョンを構築してください$PROMPT_COMMANDS
。私のために動作します。