linux
  • bash
  • 2011-02-08 6 views 2 likes 
    2

    このカラースキームがbashシェルでzenburnを有効にすることがわかりました。しかし、私は本当にそれが何を理解していない。誰かが正確にこれが何をしているかについていくつかの情報を公開することができますか?.profileまたは.bashrcに置かれたシェルのzenburnの構文の説明

    function EXT_COLOR() { echo -ne "\033[38;5;$1m"; } 
    export LS_COLORS='di=38;5;108:fi=00:*svn-commit.tmp=31:ln=38;5;116:ex=38;5;186' 
    export PS1='`EXT_COLOR 187`\[email protected]\h`EXT_COLOR 174` \w \$\[\033[00m\] > ' 
    

    答えて

    1

    機能設定色(SGR)。エスケープシーケンスの詳細については、例えばを参照してください。 wikipedia LS_COLORSは、異なるファイル/ファイルタイプの色を設定する方法を設定します。これは私が使用しない、あなたは誰かが答えるのを待つべきです。

    3行目には、あなたのmultihuedプロンプトを設定します。hostname(\h)、その後、リテラル@それから、以前に定義された関数を使用して色を設定したユーザ名(\u)を出力し、その後、再び出力WORKDIRECTORY(\w)の色を変更します$または#(EUIDに依存します)、その後、通常の色に戻します(\[\]は、非印字文字を埋め込むために使用され、man bash/PROMPTINGを参照)。

    +1

    '\\ $'はリテラルドル記号ではなく、EUIDが0の場合は '#'を、それ以外の場合は '$'を示す条件付きプロンプト文字です。 '\ [\]'は他のエスケープシーケンスでも使用する必要があります: 'EXT_COLOR(){echo -ne" \ [\ 033 [38; 5; $ 1m \] "; } ' –

    +0

    @Dennis Williamson:ありがとう、テキストを更新し、私の知識をパッチしました:) –

    +0

    ええ、それは私のものも食べました。私のコメントの最後の文は、次のように書かなければなりません: '\\ [\\]'は他のエスケープシーケンスの周りでも使う必要があります: 'EXT_COLOR(){echo -ne" \\ [\ 033 [38; 5; $ 1 m \\] "; } ' –

    関連する問題