echo
組み込み文書によるとprintf
、\033
とは\x1b
すべて同じASCII制御コード(Esc、10進数27)に変換する必要があります。
単純なコマンド\x1b
と同じように動作しますが、プロンプト変数(たとえば、Why?)では互いに置き換えて使用することはできません。\033
echo -e
PS1
ベストアンサー1
Bashにはこれを解釈できる条項がないからです。図からわかるようにヒントマニュアルページのセクションでは、bash(1)
任意の文字に対して8進数のエスケープのみが許可されています。
についてはなぜこの欠落が存在し、POSIX shとの互換性のためであると推測できますが、Bash FAQバージョン4.12でもまだこのトピックを扱っていないため、Chet Rameyに直接連絡する必要があります。