WSLのすべてのディレクトリは青色の背景に緑色です。

WSLのすべてのディレクトリは青色の背景に緑色です。

私が読んだすべての内容によると、LS_COLORS太いdi=01;34青を意味するはずです。

どんな設定を試しても、黒の背景に白(私の設定が間違っていると仮定)またはこの見苦しい標準のターコイズ以外には何も表示されません。

ここに画像の説明を入力してください。

di=**;**:私はあなたが尋ねる人に応じて、またはのすべての順列を試しましたが、dir=**;**:バニラや醜いもの以外の結果はありませんでした。

ここで何が起こっているのでしょうか?

Windows 10/WSL Ubuntu 20/Windows端末

LS_COLORS

rs=0:di=01;34:ln=01;36:mh=00:pi=40;33
:so=01;35:do=01;35:bd=40;33;01
:cd=40;33;01:or=40;31;01:mi=00:su=37;41
:sg=30;43:ca=30;41:tw=30;42:ow=34;42
:st=37;44:ex=01;32: *.tar=01;31
:*.tgz=01;31:*....

答え1

LS_COLORS無視されませんでした。緑の背景に青が表示されますが、これは確かに標準ではありません。緑の背景の青は、デザイン上見苦しいです。これは一般的にまれですが、通常の方法でUnix権限を使用しないWSLでは、通常書き込み可能なディレクトリを表します。

owで設定した内容ですLS_COLORS。設定が適用されないように交換してくださいow=34;42ow=

shopt -s extglob
LS_COLORS=${LS_COLORS/:ow=*([^:]):/:ow=:}

答え2

ow=34;42印刷されている内容です。作ったら

dircolors --print-database

次の行が表示されます。

OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky

どれowパスワード。これは、世界中に書き込むことができるディレクトリがあることを意味します。私がコメントしたようにファイル拡張子やハードリンクなどのLS_COLORS混合一致条件

ただし、GNU lsは各ファイルに色を付けるために1つのスキームのみを選択します。

この場合、テーブルはファイル/ディレクトリタイプよりも「興味深い」エントリを表示し、それを使用します。ところで、文書が弱いので、ソースコードを読むことがGNU lsを理解する唯一の方法です。

関連情報