時には、シェルプロンプトで現在の作業ディレクトリが短縮されているように見えたり、そうでない場合があります。
たとえば、またはでマークさ/usr/bin
れます。それ以外の場合は、完了とマークされているのを見ました。bin$
/folder1/folder2
folder2$
/folder1/folder2
/folder1/folder2$
私はデフォルトのターミナル設定を使用しています(学習のためにFedora 22仮想マシンを使用していますが、他のディストリビューションを使用する他のいくつかのチュートリアルビデオでもこれを見つけました)。
どんなルールがありますか?
答え1
パスを減らすもう1つの方法はシェル変数を\w
使用することです。PROMPT_DIRTRIM
デモ:
jackman@b7q9bw1:/usr/local/share/doc $ echo "$PS1"
\u@\h:\w \$
jackman@b7q9bw1:/usr/local/share/doc $ pwd
/usr/local/share/doc
jackman@b7q9bw1:/usr/local/share/doc $ PROMPT_DIRTRIM=2
jackman@b7q9bw1:.../share/doc $ pwd
/usr/local/share/doc
jackman@b7q9bw1:.../share/doc $
答え2
デフォルトのプロンプトに表示される内容は、変数の内容によって決まりますPS1
。以下はbash文書から抜粋したものです。
\w the current working directory, with $HOME abbreviated
with a tilde (uses the value of the PROMPT_DIRTRIM vari‐
able)
\W the basename of the current working directory, with $HOME
abbreviated with a tilde
つまり、次のようPS1
に\w
\W
PS1
私が試したいくつかのランダムなLinuxベースのシステムのデフォルトはですが、[\u@\h \W]\$
これはシステムによって異なります。
答え3
これはPS1変数の内容に関連しています。を実行してPS1変数を確認できますecho $PS1
。
1つの場合は\w
フルパスが表示され、1つの場合は最後のフォルダのみが\W
表示されます。