1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Linux, Mac (BSD系), Macにcoreutilsを入れた場合に対応するlsの色付け設定

Posted at

やりたいこと

LinuxでもMac(coreutils有り無し)でも同じ.zshrcを使ってlsの色付け設定をする.

LS_COLORS

  • LinuxのGNU版lsコマンドの色設定は環境変数LS_COLORSで指定.
  • MacのBSD版lsコマンドの色設定は環境変数LSCOLORSで指定できるが,設定方法が特殊で扱いづらい.
  • LinuxとMacで同じ色設定にするにはcoreutilsをインストールしてGNU版lsコマンドを使えるようにするのが楽.

Linuxではdircolorsというコマンドを実行すればいい感じにLS_COLORSを設定できる.Macでcoreutilsを使う場合はgdircolorsというコマンド.

場合分けして.zshrcを書く.

.zshrc
# ---------- ファイル,ディレクトリの色設定
if type dircolors > /dev/null 2>&1; then
    eval "$(dircolors)"
elif type gdircolors > /dev/null 2>&1; then
    eval "$(gdircolors)"
fi

lsのエイリアス

  • LinuxのGNU版lsで色をつけるオプションはls --color=auto
  • MacのBSD版lsで色をつけるオプションはls -G
  • BSD版lsを使う場合はデフォルトの色設定をとりあえず使う.
  • coreutilsを入れた場合はglsを使う.

.zshrcに場合分けして記述.darwin*はMacOS.

.zshrc
case ${OSTYPE} in
  darwin*)
    alias ls='ls -G'
    ;;
  linux*)
    alias ls='ls --color=auto'
    ;;
esac
# ------ if coreutils
if type gls > /dev/null 2>&1; then
    alias ls='gls --color=auto'
fi

参考

Yonchu @yuyuchu3333: LS_COLORSを設定しよう

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?