■ ls で表示されるファイルのカラー表示について ファイルの一覧を表示するコマンド「ls」では オプションをつけたりすることにより, ファイル名をカラーで表示することができる. □ カラー表示するためのオプション コマンドに, 以下のように「--color」オプションを つけることにより, カラー表示ができる. $ ls --color ただし, 上記のようにするとパイプで「less」などに渡した 際に文字が変に表示されてしまうことがある. こういった際には, 標準出力の時だけカラー表示できるように 「--color」オプションの後ろに「=auto」をつけるとよい. $ ls --color=auto なお, 更にお勧めは「-F」オプションもつけておくことで 実行ファイルにはファイル名末尾に「*」 ディレクトリなら「/」 シンボリックリンクなら「@」 がつくため, 色と合わせるとファイル(ディレクトリ)の種類 が一発でわかって便利である. これを alias などに登録することをお勧めする. □ カラー表示の際の配色を変更する方法 ls 実行時のファイルの配色は環境変数「$LS_COLORS」で設定されている. ファイルの配色は 1. ファイルの種類 (ディレクトリ, シンボリックリンクなど) 2. 拡張子 (.jpg , .gz など) の2つで決まっている. 以下, デフォルトでの $LS_COLORS の内容である. (実際は改行なし空白なしで, 一行で表示される) no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01: cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31: *.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31: *.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31: *.jpg=01;35:*.png=01;35:*.gif=01;35:*.bmp=01;35:*.ppm=01;35: *.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.png=01;35: *.mpg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35: アルファベット(di とか *.zip)がファイルの種類をあらわし, 数字はそれをどのように表現するかというオプションである. ◆ アルファベットの説明 (わかるところは) fi 普通のファイル(file) di ディレクトリ(directory) ln シンボリックリンク(symbolic link) pi パイプ(pipe) so ソケット(socket) bd block device driver cd character device driver or orphaned syminks ex 実行ファイル(実行権限がついたファイル) *.tar 拡張子 tar がついたファイル (つまり, ファイル名の末尾が tar のファイルのこと) 他の拡張子についても同様なため, 説明は割愛. ◆ 数字の説明 00 標準色 01 明るくする 04 下線を引く 05 点滅させる 30 黒色文字 31 赤色文字 32 緑色文字 33 黄色文字 34 青色文字 35 紫色文字 36 水色文字 37 白色文字 40 バックを黒 41 バックを赤 42 バックを緑 43 バックを黄 44 バックを青 45 バックを紫 46 バックを水色 47 バックを白 オプションは, 一つのファイルに対して複数指定することができる. また, 反対属性のものを指定してしまった場合には 後半に書いたものが有効になる. ◆ 参考ホームページ ZDNet Helpdesk: LinuxTips - ls実行時に表示される配色を変更したい http://www.zdnet.co.jp/help/tips/linux/l0372.html □ ls のカラー設定を別ファイルに保存 export コマンドで $LS_COLOR 変数を設定するわけだが, そもそも設定値が長いために普通にコマンドを入力するのも 大変だし, .bashrc 内で alias でコマンドを作成してもずいぶんと 長い行ができてしまう. この場合は dircolors コマンドを使用するのが便利である. まず, 以下のコマンドを使用する. $ dircolors -p > ~/.colorrc すると, .colorrc に標準でのカラー設定が書き出される. このファイル内にカラー設定の書き方なども載っている. このファイルを自分好みに編集する. この .colorrc を $LS_COLOR に反映するためには以下のコマンドを使用する. $ eval `dircolors ~/.colorrc` 実際に使用する場合には, カラー設定を .colorrc に設定した後, .bashrc や .bash_profile に eval `dircolors ~/.colorrc` alias ls='ls -F --color=auto' と書き込むと良い.