Mac Terminali renkli çıktı alacak şekilde nasıl yapılandırabilirim?


Yanıtlar:


370

Düzenle:

~/.bash_profile

veya

~/.profile

ve üzerinden renkli çıktıyı etkinleştirmek için aşağıdaki satırı ekleyin ls:

export CLICOLOR=1

Gösterilen renklendirmeyi özelleştirmek için lsisteğe bağlı olarak bu değişkeni ekleyebilirsiniz LSCOLORS,.

Örnekler

  • Varsayılan

    export LSCOLORS=ExFxCxDxBxegedabagacad
  • Siyah bir arka plan kullanıyorsanız bunu kullanabilirsiniz.

    export LSCOLORS=gxBxhxDxfxhxhxhxhxcxcx
  • Tipik bir Linux terminalinin renklerini taklit etmek istiyorsanız:

    export LSCOLORS=ExGxBxDxCxEgEdxbxgxcxd

Yukarıdakileri ikisine ekledikten sonra ~/.bash_profileveya ~/.profileoturumunuzu kapatıp / oturum açabilir veya dosyayı kabuğunuzdan çıkarabilirsiniz, örneğin:

$ . ~/.bash_profile

NOT: Kullanmak için renk seçimi konusunda yardıma ihtiyacınız olursa, LSCOLORS Generator adlı bu çevrimiçi aracı kullanabilirsiniz .


Renkli metnin koyu görünmemesini sağlamanın bir yolu var mı?
MemphiZ

1
@JamieCook Mikulas'ın renklerini daha linux tutarlı buluyorum. Spesifik olarak, kırık bir sembolik bağlantı koyu kırmızı olmalıdır. Senin rengin mavi ile ... bu küçük bir sorun değil.
Ray Foss

1
Daha sonra mac Sierra ve çalışmıyor
Stevie G

1
@RayFoss gerçekten, bu küçük bir sorun değil, ama OS X varsayılan olarak geçerli ve kırık sembolik bağlantılar arasında bir fark yaratamaz. Uygulanabilir tek alternatif gnu ls kullanmaktır
Ciprian Tomoiagă

2
@StevieG benim için High Sierra'da çalışıyor. Doğru ayarladığınızdan emin olun: echo $CLICOLOR1 vermeli mi?
Franklin Yu,

192

Ekleyebilirsin

alias ls='ls -G'

Blogunuza ~/.bash_profilerenkli olsun lsçıkışını.


41
Mine takma addır ls = "ls -Gp" - -p her dizinden sonra bir eğik çizgi ekler. Benim için, bu çok daha fazla görsel farklılaşma sağlar ki bu yardımcı olur.
Quinn Taylor

39
Seni görüyorum -pve sizi yükseltiyorum, -Fki bunlara ek olarak bir *sonradan çalıştırılabilirler koyar , |borulardan @sonra, sembolik bağlardan sonra, vb.

25
Sadece eğlence için, "insan tarafından okunabilir" birimlerdeki boyutları biçimlendirecek bir -h atın, yani 100b 10k, 23m,
4.2g

3
Eğer zaten ~ / .bash_profile adresinde bir .bash_profile dosyasına sahip değilseniz, çalışabilmesi için kaynak olduğundan emin olun. Bunu "kaynak ~ / .bash_profile"
y3sh ile

2
Dunno bu 2011'den bu yana değişmişse, ancak export CLICOLOR=1aynı şeyi yapmak için takma adı değiştirebilirsiniz .
David Lord,

25

İhtiyacım olan tek şey, bunu benim için eklemek. ~/.bash_profile

export CLICOLOR=1

Veya ~/.bashrc.
Chris Sayfa

capitan üzerinde çalışmak görünmüyor):
drevicko

1
Benim için El Captian'da bir patron gibi çalıştım, @Filype
fusion27'yi

Yapmanız gerekenler: 1. terminali kapatıp yeniden açmanız, 2. config dosyasını kaynaklamanız . ~/.bash_profileveya 3. logout / login
slm

13

Okunabilir bir Mac OS X Terminal renk şeması istiyorsanız, aşağıdakilere bakmak isteyebilirsiniz:

Bunu bir yıldan fazla bir süredir kullanıyorum ve onsuz çalışamayabilirim!

İşte güncellenmiş bir link:


6
Mac OS X Lion 10.7'den itibaren, Terminal ANSI renklerini özelleştirmeye izin verir, böylece SIMBL veya diğer uzantıların kullanılması artık gerekli değildir. Ayrıca 256 rengi destekler.
Chris Sayfa

12

Ayrıca bilgi istemi rengini (ve formatını) ekleyerek özelleştirebilirsiniz:

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

için ~/.bash_profileveya ~/.profiledosya. Nerede 0;33benim siyah / yarı şeffaf terminal penceresinde güzel görünüyor düzenli sarıdır.

Renklerin ve açıklamalarının tam listesi: https://wiki.archlinux.org/index.php/Color_Bash_Prompt

Müthiş terminal pencerem


8

Diğer bir seçenek lsde 'coreutils' programının bir parçası olan GNU'yu kullanmak .

Rudix veya Homebrew ( brew info coreutils) veya Macports veya Fink aracılığıyla alabilirsiniz . Aynı kabuk yapılandırma dosyalarını farklı sistemlerde kullanıyorsanız veya zaten GNU ls ile aşina iseniz, "yalnızca Mac OS X" çözümü kullanmak tercih edilebilir.



7

Şahsen, Terminalime renk ve diğer numaralar eklemek için Oh My Zsh kullanıyorum . Bence en kolay yol bu.

oh-my-zsh, Zsh yapılandırmanızı yönetmek için açık kaynaklı, topluluk odaklı bir çerçevedir.

Bir sürü faydalı işlev, yardımcı, eklenti, tema ve sizi hayrete düşüren birkaç şey ile birlikte gelir…

görüntü tanımını buraya girin


4

~/.bash_profileDosyaya aşağıdaki satırı eklemeniz yeterlidir :

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

Ön izleme: görüntü tanımını buraya girin

Bu benim tercih ettiğim renkler. Bilgi isteminin renginin her bölümünü ANSI renk kodları olan mkodları (örn. 34m) Değiştirerek özelleştirebilirsiniz .

ANSI Renk kodlarının listesi:

  • Siyah: 30 m
  • Kırmızı: 31m
  • Yeşil: 32m
  • Sarı: 33 m
  • Mavi: 34m
  • Mor: 35 m
  • Camgöbeği: 36m
  • Beyaz: 37m

4

Burada tüm cevapları birleştirdiğimde kullandığım şey:

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"

görüntü tanımını buraya girin


3

Tanrılarınız için onlarca yıllık şifreli kodları unutun, varsayılan kaplamayı ayarlamak için yerleşik Terminal -> Tercihler ... Ayarlar bölmesini kullanın ve ANSI renklerini istediğiniz gibi düzenleyin. Yazı tipini de ayarlayabilirsiniz. Menlo 12pt'yi tercih ederim. Düzenli bir Joe bunu nasıl yapabilir ve diğer afişlerin önerdiği gibi işleri yapmanın tüm çılgın komut satırlarından, unix-esque yöntemlerinden kaçının.


12
Bence ls, renkli çıktının olabileceğini bile bilecek kadar deneyimli biri , doğru bir şekilde yapılandırmak için birkaç Unix komutu çalıştırabilir.
nohillside

7
Ama bu sadece ls'nin tek renkte gösterilmesini sağlar, linkleri, dizinleri, dosyaları farklı renklerde gösterir, ls yapabildiği gibi
Mark
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.