誰が私のLS_COLORSを設定しますか?

誰が私のLS_COLORSを設定しますか?

私はbashシェルを使用しており、いくつかのlsリストの色を変更したいと思いました。これはLS_COLORS環境変数を使用して制御できます。、さまざまなファイルとディレクトリの種類と状態の端末の色をエンコードします。

今私持つ LS_COLORS私の環境に設定されていますが、誰が正確に設定したのか覚えていません。私の背中にはexport LS_COLORS言及がありません。LS_COLORS.bashrc.bash_login

では、どこに設定されていますか?

注:私はDebianベースのディストリビューションを使用しています。

答え1

このLS_COLORS変数はGNUを使って設定できます。dircolors注文する- そのため、環境変数名を直接使用しません。 Debian などのシステムで見つけることができる一般的なフラグメントは次.bashrcのとおりです。

if [ -x /usr/bin/dircolors ]; then
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
    alias ls='ls --color=auto'
fi

したがって、目的のタスクは次のようになります。

  • ~/.dircolors存在しない場合は、次のように作成します。dircolors -p > ~/.dircolors
  • ~/.dircolorsお気に入りのテキストエディタで編集
  • これは他の人のようなページdircolorsLS_COLORS変数の代わりにデータベースを編集する方法の説明

これで、新しいシェルを起動するたびに希望の色を取得できます。

関連情報