プロンプトに表示したい:
現在の(絶対)作業ディレクトリ、緑色で表示され、
新しい行、ドル記号、空のスペース。
私は.profile
でこの行を使用しています
export PS1='\e[0;32m$(pwd)\n\e[m$ '
だから例えばDesktop
、私のプロンプトは次のようになります。
ただし、上矢印を押して前のコマンドを再実行すると、プロンプトの開始時にランダムな文字シーケンスが表示されることがあります。 g。
cd cd Desktop
コマンドをヒットしたことがありません。最も奇妙な部分は、バックスペースが上記の2つのcd
コマンドの最初のコマンドも削除しないことです!
助言がありますか?
プロンプト内の非印刷文字がエスケープされた角括弧内にあることを確認する必要があります。そうでない場合、bashはプロンプトのサイズを正しく計算できません。私はあなたのためにそれを修正したと思います:
PS1='\[\e[0;32m\]$PWD\n\[\e[m\]$ '
まず第一に、これに関する正しい方法を指摘してくれた@Zannaに感謝します。
より完全な答えを得るために、以下を含むソリューションを拡張しました。
a)緑色のcwd
b)NEW行では、gitブランチ(存在する場合)が黄色い色で、ブランチが汚れている場合は赤い星が付きます
Bを達成するには、 git対応プロンプト が必要です
~/.bashrc
の最終行として次のようになります
export PS1='\[\e[0;32m\]$PWD\n\[\e[m\]\[\e[0;33m\]$git_branch\[\e[m\]\[$txtred\]$git_dirty\[$txtrst\]$ '
Gitブランチを使用している場合、プロンプトはこのように拡張されます。