Mac端末を設定して、カラーlsを出力するにはどうすればよいですか?


336

Mac端末を設定して、カラーlsを出力するにはどうすればよいですか?MacOS 10.5を使用しています


5
これは素晴らしい質問です... ls --color(la gnu ls)はどこでも動作することを常に期待していました。MacOSは--colorを受け入れないため、オプションとして色付きの出力はまったくないと仮定しました。
アーメンテージ

回答:


370

編集:

~/.bash_profile

または

~/.profile

次の行を追加して、単にカラー出力を有効にしますls

export CLICOLOR=1

表示される色をカスタマイズするには、lsオプションでこの変数を追加できますLSCOLORS

  • デフォルト

    export LSCOLORS=ExFxCxDxBxegedabagacad
  • 黒の背景を使用している場合、これを使用できます

    export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
  • 典型的なLinuxターミナルの色を模倣したい場合:

    export LSCOLORS=ExGxBxDxCxEgEdxbxgxcxd

上記のいずれ~/.bash_profile~/.profileを追加するか、ログアウト/ログインするか、シェルでファイルを取得できます。例:

$ . ~/.bash_profile

注:使用する色の選択にヘルプが必要な場合は、LSCOLORS Generatorと呼ばれるこのオンラインツールを使用できます。


色付きのテキストを太字にしない方法はありますか?
MemphiZ 14年

1
@JamieCook私は、Mikulasの色のLinuxの一貫性がより高いと感じています。具体的には、壊れたシンボリックリンクは濃い赤になります。あなたのlscolorsが青だと...これは小さな問題ではありません。
レイ・フォス

1
Macシエラ以降では動作しません
スティービーG

1
@RayFossは確かに小さな問題ではありませんが、OS Xはデフォルトで有効なシンボリックリンクと壊れたシンボリックリンクを区別できません。唯一の実行可能な代替がすることです、GNUのlsを使う
シプリアンTomoiagă

2
@StevieGはHigh Sierraで動作します。必ず正しく設定してくださいecho $CLICOLOR。1を指定する必要がありますか?
フランクリンゆう

192

あなたは付け加えられます

alias ls='ls -G'

あなた~/.bash_profileに色付きのls出力を取得します。


41
私のエイリアスはls = "ls -Gp"です。-pは各ディレクトリの後にスラッシュを追加します。私にとっては、視覚的にはるかに差別化されているので便利です。
クインテイラー

39
私はあなたを見て、さらに、実行可能ファイル、パイプ、シンボリックリンクなどを追加し-pます。-F*|@

25
楽しみのために、-hをスローします。これは、「人間が読める」単位でサイズをフォーマットします。つまり、100b 10k、23m、4.2g
Armentage

3
〜/ .bash_profileに.bash_profileがまだない場合は、それが機能するように必ずソースを作成してください。「
source〜

2
これが2011年以降に変更された場合はDunnoですが、エイリアスを置き換えexport CLICOLOR=1て同じことを達成できます。
デビッドロード

25

本当に必要なのは、これを自分の ~/.bash_profile

export CLICOLOR=1

または~/.bashrc
クリスページ


1
、私のためにエルCaptianで上司のような@Filypeを投稿するためのおかげで働いていた
fusion27

あなたは持っているのいずれか:1.近いあなたは、端末と再度開く、2.リソース設定ファイル:. ~/.bash_profile、または3ログアウト/ログイン
SLM

13

読みやすいMac OS Xターミナルの配色が必要な場合は、次のことを検討してください。

私はこれを1年以上使っていますが、これなしでは機能しないかもしれません!

更新されたリンクは次のとおりです。


6
Mac OS X Lion 10.7では、ターミナルでANSIカラーをカスタマイズできるため、SIMBLまたは他の拡張機能を使用する必要はなくなりました。256色もサポートしています。
クリスページ

12

また、以下を追加して、プロンプトの色(およびその形式)をカスタマイズできます。

PS1='\[\e[0;33m\]\h:\W \u\$\[\e[m\] '

to ~/.bash_profileまたは~/.profilefile。0;33私の黒/半透明の端末ウィンドウで見た目が普通の黄色はどこですか。

色の完全なリストとその説明は次のとおりです。https : //wiki.archlinux.org/index.php/Color_Bash_Prompt

私の素晴らしい端末ウィンドウ


8

もう1つのオプションはls、「coreutils」プログラムの一部であるGNUを使用することです。

RudixまたはHomebrew(brew info coreutils)またはMacportsまたはFink から入手できます。異なるシステムで同じシェル構成ファイルを使用する場合、またはすでにGNU lsに精通している場合は、「Mac OS X専用」ソリューションを使用するよりも望ましい場合があります。



7

個人的には、色やその他のトリックをターミナルに追加するためにOh My Zshを使用しています。それが最も簡単な方法だと思います。

oh-my-zshは、Zsh構成を管理するためのオープンソースのコミュニティ主導型フレームワークです。

たくさんの便利な機能、ヘルパー、プラグイン、テーマ、そして叫ぶようなものがバンドルされています…

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


4

~/.bash_profileファイルに次の行を追加するだけです:

export PS1=" \[\033[34m\]\u@\h \[\033[33m\]\w\[\033[31m\]\[\033[00m\] $ "

プレビュー: ここに画像の説明を入力してください

これは私の好みの色です。ANSIカラーコードであるmコード(例34m)を変更することにより、プロンプトの色の各部分をカスタマイズできます。

ANSIカラーコードのリスト:

  • 黒:30m
  • 赤:31m
  • 緑:32m
  • 黄色:33m
  • 青:34m
  • 紫:35m
  • シアン:36m
  • 白:37m

4

ここですべての答えを組み合わせて使用​​します:

COLOR_RED="\033[0;31m"
COLOR_YELLOW="\033[0;33m"
COLOR_GREEN="\033[0;32m"
COLOR_OCHRE="\033[38;5;95m"
COLOR_BLUE="\033[0;34m"
COLOR_WHITE="\033[0;37m"
COLOR_RESET="\033[0m"

#git_color
function git_color {
  local git_status="$(git status 2> /dev/null)"

  if [[ ! $git_status =~ "working directory clean" ]]; then
    echo -e $COLOR_RED
  elif [[ $git_status =~ "Your branch is ahead of" ]]; then
    echo -e $COLOR_YELLOW
  elif [[ $git_status =~ "nothing to commit" ]]; then
    echo -e $COLOR_GREEN
  else
    echo -e $COLOR_OCHRE
  fi
}

#git_branch
function git_branch {
  local git_status="$(git status 2> /dev/null)"
  local on_branch="On branch ([^${IFS}]*)"
  local on_commit="HEAD detached at ([^${IFS}]*)"

  if [[ $git_status =~ $on_branch ]]; then
    local branch=${BASH_REMATCH[1]}
    echo "($branch)"
  elif [[ $git_status =~ $on_commit ]]; then
    local commit=${BASH_REMATCH[1]}
    echo "($commit)"
  fi
}

PS1='\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]'
PS1+="\[\$(git_color)\]"        # colors git status
PS1+="\$(git_branch)"           # prints current branch
PS1+="\[$COLOR_BLUE\]\[$COLOR_RESET\]\$ "
export PS1

export LC_ALL=en_US.UTF-8
export CLICOLOR=1
export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
alias ls="ls -Gp"

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


3

数十年前に作成されたすべての暗号コードを忘れて、組み込みのターミナル->設定...設定ペインを使用してデフォルトのスキンを設定し、ANSIカラーを好みに合わせて編集します。フォントも設定できます。Menlo 12ptが好きです。これは、通常のジョーなら誰でもできることであり、他のポスターが示唆しているように、コマンドラインで、Unix風のクレイジーな方法をすべて回避します。


12
ls色付きの出力ができることを知っているほど十分な経験がある人は、いくつかのUnixコマンドを実行してそれを正しく構成することもできると思います。
nohillside

7
しかし、これはただのlsは1色で、それはLSを行うことができますようリンクは、ディレクトリは、ファイルを別の色で表示させない表示されます
マーク・
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.