Ubuntu端末プロンプトの変更

Ubuntu端末プロンプトの変更

gitリポジトリをワークスペースのフォルダ(/home/jose/workspace/very-very-very-long-repository-name/)に複製しました。

だから端末で検索すると、次のようになります。

jose@jose-Vostro-1500:~/workspace/very-very-very-long-repository-name$

端末をいっぱいにしないように端末プロンプトを変更/編集/縮小する方法はありますか? ?

例えば

~/abbreviated/prompt$

ありがとう、女

答え1

プロンプトは環境変数によって制御されますPS1

echo $PS1今あなたが持っているものを見てください。これは実際の文字(ユーザーとホスト名など)@とエスケープ文字の組み合わせです。\u\h

この発電機自分で作るのを手伝ってください

このスクリプトディレクトリパスを短縮する良い方法を提供します。

PS1="whatever"最後の行にこれを入力~/.bashrcし、ログアウトしてログインまたはsource ~/.bashrc申請してください。

さまざまな異なる動作を定義するPS2、PS3、およびPS4変数もあります。あなたはそれらについて読むことができますthegeekstuff.com

答え2

Bash 4以降では特殊変数を使用できますPROMPT_DIRTRIM。エスケープ文字\wまたは\W少なくともBash 3.2以降で使用できます。この関数は、プロンプトに表示される現在のディレクトリの長さを制御するために使用できます。

PROMPT_DIRTRIM
0より大きい数値に設定されている場合、この値は拡張された\wおよび\Wプロンプト文字列をエスケープするときに保持する末尾のディレクトリコンポーネントの数として使用されます(下記のPROMPTINGを参照)。削除された文字は省略記号で置き換えられます。

\
w現在の作業ディレクトリ、$ HOMEはチルダに短縮されます(PROMPT_DIRTRIM変数値​​を使用)。

\ W
現在の作業ディレクトリのデフォルト名$ HOMEはチルダに省略されています。

答え3

ログフォルダ名(または深く入れ子になったフォルダ)の問題を解決するには、Bashで次のようにプロンプ​​ト\nに新しい行()を追加できることに注意してください。$PS1

export PS1="[\u@\h \W]\n$ "

これにより、次の2行のプロンプトが表示されます。

[user@host ~/workspace/very-very-very-long-repository-name$] 
$

プロンプトは次の2行目に表示されます$

関連情報