私はOS Xを初めて使用し、しばらくの間Ubuntu Linuxを使用してMacを入手したばかりです。私が理解しようとしている多くのことの中には、私の実行中ls -laまたは(Linuxで)表示されているもののように、ターミナルウィンドウに色がないことgit status...
シェルで色をアクティブにする方法がわかりません。
私はOS Xを初めて使用し、しばらくの間Ubuntu Linuxを使用してMacを入手したばかりです。私が理解しようとしている多くのことの中には、私の実行中ls -laまたは(Linuxで)表示されているもののように、ターミナルウィンドウに色がないことgit status...
シェルで色をアクティブにする方法がわかりません。
回答:
グローバルターミナルの色を有効にするために私が見つけたソリューションは次のとおり です。
.bash_profile(OS X 10.8以降)—または(10.7以前の場合):.profileまたは.bashrcまたは/etc/profile(可用性に応じて)—ホームディレクトリで編集し、次のコードを追加します。
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
CLICOLOR=1 端末のカラーリングを有効にするだけです。
LSCOLORS=... 特定のアイテムに色を付ける方法を指定します。
を編集した後.bash_profile、ターミナルを起動し、次のコマンドを実行して強制的に変更を加えます。
source ~/.bash_profile
次にTerminal > Preferences、に移動し、ProfilesタブをクリックしてからTextサブタブをクリックして、チェックしDisplay ANSI Colorsます。
Sierraで確認済み(2017年5月)。
/etc/profile魅力的です。
export LS_COLORSステートメントがあります
LSCOLORS=ExGxFxdxCxDxDxxbaDecac
起動スクリプトの1つでLinuxベースの構文を使用できます。これをOS X Mountain Lionボックスでテストしたところです。
例えば。あなたの~/.bash_profile
export TERM="xterm-color"
export PS1='\[\e[0;33m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '
これはあなたに素敵な色のプロンプトを与えます。色付きのls出力を追加するには、を追加できalias ls="ls -G"ます。
テストするには、a source ~/.bash_profileを実行して現在の端末を更新します。
色についての補足:色の前にはエスケープシーケンスが\eあり、エスケープシーケンスで構成[style;color+m]およびラップされた色の値によって定義され[]ます。例えば。
\[\e[0;31m\]\[\e[1;31m\]\[\e[0m\]ルートの.bash_profileに常に少し変更したカラースキームを追加して、ユーザー名を赤にしているので、ルートとしてログインしているかどうかを常にはっきりと確認できます(多くのターミナルウィンドウを開いている場合の間違いを防ぐために便利です)。
で/root/.bash_profile:
PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '
オンラインのすべてのSSHアカウントについて、ホスト名を赤で表示して、ローカル端末とリモート端末のどちらにいるかを区別します。.bash_profileサーバーのホームディレクトリにあるファイルを編集するだけです。サーバーに.bash_profileファイルがない場合は、ファイルを作成できます。ログイン時にそのファイルを入手する必要があります。
これが期待どおりに機能しない場合は、MacOSをあまり使用していないため、以下のコメントをいくつか読んでください。
これをリモートサーバーで実行する場合は、~/.bash_profileファイルが存在するかどうかを確認します。そうでない場合は、作成してください。次回のログイン時に自動的に読み込まれます。
PS1とのより良い$PWD代わりの\uような、:PS1=\[\e[0;31m\]$PWD\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$
PROMPT_COMMAND使用する場合、の\033代わりに構文を使用する必要があることがわかります\e。プロンプトの前に色付きのタイムスタンプを追加する例(~/.bashrcまたはにこれを含めます~/.bash_profile):PROMPT_COMMAND="${PROMPT_COMMAND}; echo; echo -e '\033[0;35m'\[\$(date +%F\ %T)\]'\033[m'"
MartinVonMartinsgrünメソッドと4Levelsメソッドは、Mac OS X Mountain Lionでうまく機能することが確認されています。
更新する必要があるファイルは〜/ .profileでした。
しかし、私のお気に入りのアプリケーションであるiTerm 2を推奨しない限り、この質問を残すことはできませんでした。
iTerm 2では、ファイルからグローバルカラースキームを読み込むことができます。いろいろな色スキームを試して、試すのは本当に簡単です。
これは、iTerm 2ウィンドウと色設定のスクリーンショットです。

以下を〜/ .profileファイルに追加すると、iTerm 2は色を上書きできました。
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
ここにいくつかの素晴らしいプリセットがある素晴らしいリポジトリがあります:
mbadolatoによるGithubのiTerm2カラースキーム
おまけ:「システム全体のホットキーでiTerm2を表示/非表示」を選択し、キーをBetterTouchToolにバインド して、マウスジェスチャーで端末を瞬時に非表示/表示します。
baskervilleリンクを適切なものに変更してください。コピーと貼り付けが間違っているようです。
lsをカラー化したい場合は、〜/ .bash_profileファイルを編集し、次の行を追加する必要があります(まだ記述されていない場合)。
source .bashrc
次に〜/ .bashrcファイルを編集または作成し、lsコマンドにエイリアスを書き込みます。
alias ls="ls -G"
source .bashrcすでに起動されている場合は、端末を入力するか、単に新しい端末を開く必要があります。
lsJusteにさらにオプションが必要な場合は、マニュアル(man ls)をお読みください。オプションは、GNU / Linuxシステムの場合とまったく同じではありません。
tcshを使用している場合は、~/.cshrcファイルを編集して次の行を含めます。
setenv CLICOLOR 1
setenv LSCOLORS dxfxcxdxbxegedabagacad
マーティンが言うように、LSCOLORSは使用する配色を指定します。
使用したいLSCOLORSを生成するには、このサイトをチェックアウトしてください
bash2003
$ TERMが与えるものを確認してください:私はxterm-colorで、ls -alGはカラー化された出力を行います。
xterm-256color、私は色が出ません。CLICOLORそしてLSCOLORSそれを変更しないでください):