Bash:PS1から見えないタイムスタンプを印刷する

Bash:PS1から見えないタイムスタンプを印刷する

私の現在のPS1は次のとおりです

╭dotfiles
╰(ivan)•

コマンドの実行時期を確認したいときにカーソルで選択/強調表示できますが、通常の表示を妨げないように見えないタイムスタンプを追加したいと思います。

╭dotfiles 10:24:01
╰(ivan)•

今私にいます:

PS1='╭\033[1m\W\033[0m\n╰(\u)• '

背景色が黒であると仮定すると、ANSIカラーコード(黒\033[0;30m)を使用してタイムスタンプを見えないように印刷できます。

PS1='╭\033[1m\W\033[0m \033[0;30m\t\033[0m\n╰(\u)• '

しかし、私の背景は常に黒ではありません。切り替えることができるいくつかのカラースキームがあります。

理想的には、端末から背景色を動的に取得したいのですが、これは可能/妥当ですか?それとも別のアプローチを取ることができますか?


編集する

\[誰かがANSIカラーコードを間に含める必要があると正しく指摘しました\]。したがって、上記の設定は実際には次のようになります。

PS1='╭\[\033[1m\]\W\[\033[0m\]\n╰(\u)• '

そして

PS1='╭\[\033[1m\]\W\[\033[0m\] \[\033[0;30m\]\t\[\033[0m\]\n╰(\u)• '

ベストアンサー1

おすすめ記事