Mac OS Xでls --color = autoを使用するにはどうすればよいですか?


回答:


79

ls実際にはBashとは別です。Mac OS XにはBSDバージョンがありls-Gコマンドラインで、またはCLICOLOR(おそらくLSCOLORS)環境で必要です。

詳細についてはman ls、を参照してください。


5
同上。alias ls='ls -G'Snow Leopardで.bashrcを設定しました。
ayaz

何らかの理由で、CLICOLOR=Y私のMacでの作業を停止しました。alias ls='ls -G'強制的lsに色付けします。これは対話型端末のみに定義します。
DKroot

31

ターミナルウィンドウを開き、次のように入力します。

alias ls='ls -G'

その後、ヒットEnterして完了!


10

Homebrewを使用します。

brew install coreutils

これgにより、すべてのコマンドの前にの接頭辞がスローされることに注意してください(例:glsfor ls)。これらのエイリアスを自動的に生成するファイルを提供するオプションがあります。

エイリアス全体を実行せずに直接インストールするオプションがあるかどうかはわかりませんでしたので、代わりにインストールされたMacPortsでこれを実行しました


1
出力には、これらのコマンドを通常の名前で本当に使用する必要がある場合、次のことができます... 本当に強調するのなぜですか?欠点は何ですか?
-z0r

そして、あなたはarchive.orgにあなたのページをアーカイブしていないし、今、あなたの最後の段落では、あなたのリンクがなくなっていない
barlop

5

GNUおよび* BSD / darwin lsの互換性

〜/ .profile

#for *BSD/darwin
export CLICOLOR=1

ls --color=auto &> /dev/null && alias ls='ls --color=auto' ||

〜/ .bashrc(Linuxのbashが常に〜/ .profileを読み取るかどうかは覚えていませんが、ARCHのzshは読み取っていません)

[[ -f $HOME/.profile ]] && source $HOME/.profile

6
このコードを説明できますか?
bwDraco

1
* BSDおよびDarwinシステムのCLICOLOR環境変数の設定-設定されている場合、lsおよび他のユーティリティは色付きで動作しますが、GNU ls(Linuxの場合)はそれを無視します。「ls --color = auto」が失敗しない場合(終了ステータス= 0)-lsのGNUバージョンがあり、対話モードでカラーコードを描画するエイリアスを作成します。失敗した場合は、CLICOLORのためエイリアスは不要です。変数。「&> / dev / null」は、何かが失敗した場合や問題がなければ、stderrとstdoutを表示しません。私のLinuxとOSXで動作します。(osxのps bashとfreebsdは.bashrcを読み取らないため、.profileに入れて既に修正済みです)。
ビクターガブロ

2

の代替バージョンをインストールする必要がありますls。Linuxで通常使用されるものは、GNU coreutilsプロジェクトのものです。

macportsfinkhomebrewからビルドしてインストールまたはインストールできます。


4
私の意見では、それはやり過ぎです。ls既存のバージョンので同じ機能がわずかに異なるようにサポートされている場合、の別個のバージョンをインストールする必要はありませんls
アヤズ

いい視点ね。繰り返しになりますが、色付きのlsは私の好みではありませんでした。alias ls='ls -F'
ダグ・ハリス

alias ls='ls -FG'-それは両方の世界の最高です!
ミパディ

1
これはhomebrewを使用して行います。Macと* nixの両方のコンピューターを使用していて、端末の外観を同じにしたい場合は、やり過ぎではありません。これにより、すべてのコンピューターで同じ構成ファイルを使用できます。glsオリジナルとしてインストールされ、元のファイルと置き換わらないため、実際にはマイナス面はありません。
送信者

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.