OS X Terminal Renkleri [kapalı]


492

OS X'te yeniyim, bir süredir Ubuntu Linux ile çalıştıktan sonra Mac aldım. Anlamaya çalıştığım birçok şey arasında, terminal penceremde renklerin yokluğu var - çalışırken (Linux'ta) gösterilenler gibi ls -laveya git status...

Kabuğumdaki renkleri nasıl aktive edeceğimi bilemiyorum.



32
"Konu dışı" olarak kapatıldı ancak etiketlere bakın: osx, kabuk, terminal, renkler ... bana tamamen konu ile ilgili gibi geliyor. OSX'i kapsar, kabukla ilgilidir, terminal kullanır ve renk eklemek ister. Bash profilini düzenlemelisiniz, bu yüzden evet, konuyla ilgili olduğunu söyleyebilirim.
Danijel-James K

12
Açıkçası konu, bash komut dosyası oluşturma ile ilgilidir.
superluminary

5
Kapalı, şaka yapıyor olmalısın! Açıkçası bu, birçok (çoğunlukla yeni) Mac kodlayıcı için yararlı ve değerlidir. Bu kapanış konusu konu dışı olduğu konusunda ciddiyse, neden SE Think Different (Farklı Düşün) diyecek şekilde göç etmiyorsunuz? Diğer SE gruplarında kullanılan bu işlevi SO destekler.
Cam_Aust

Yanıtlar:


745

Global terminal renklerini etkinleştirmek için bulduğum bir çözüm .

Giriş dizininizde .bash_profile(OS X 10.8'den beri) - veya (10.7 ve öncesi için): .profileveya .bashrcveya /etc/profile(kullanılabilirliğe bağlı olarak) - düzenleyin ve aşağıdaki kodu ekleyin:

export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced

CLICOLOR=1 terminalinizin renklendirilmesini sağlar.

LSCOLORS=... Belirli öğelerin nasıl renklendirileceğini belirler.

Düzenledikten sonra .bash_profilebir Terminal başlatın ve aşağıdakileri yürüterek değişiklikleri yapmaya zorlayın:

source ~/.bash_profile

Ardından sekmeye ve ardından alt sekmeye Terminal > Preferencestıklayın ve kontrol edin .ProfilesTextDisplay ANSI Colors

Sierra'da doğrulandı (Mayıs 2017).


21
bunu .bash_profile dosyasına ekleyerek yaptım ve işe yarıyor. .profile eklediğimde işe yaramadı. Teşekkürler!
Morten

10
Sadece düzenledim /etc/profileve bir cazibe gibi çalışıyor.
Siklon kodu

2
@ Morten ve bash profilleri ile mücadele eden diğer kişiler için, bir açıklama ve çözüm için şu cevaplara bakın: stackoverflow.com/a/7780055/665488 , superuser.com/a/244990 .
Cam Jackson

4
dotfiles / .aliases harika bir export LS_COLORSaçıklama yaptı
bobobobo

16
Linux'un kullandığı renklerin aynısını istiyorsanız (en azından Debian ve Ubuntu), şunu kullanınLSCOLORS=ExGxFxdxCxDxDxxbaDecac
remram

125

Linux tabanlı sözdizimini başlangıç ​​komut dosyalarınızdan birinde kullanabilirsiniz. Bunu bir OS X Mountain Lion kutusunda test ettim.

Örneğin. senin~/.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\]\$ '

Bu size güzel bir renk istemi verir. Renkli lsçıktı eklemek için ekleyebilirsiniz alias ls="ls -G".

Test etmek için, sadece source ~/.bash_profilemevcut terminalinizi güncellemek için a çalıştırın .

Renkler hakkında yan not: Renklerden önce bir kaçış dizisi gelir \eve [style;color+m]kaçan bir []diziden oluşan ve bir diziye sarılan bir renk değeri ile tanımlanır . Örneğin.

  • kırmızı = \[\e[0;31m\]
  • kalın kırmızı (stil 1) = \[\e[1;31m\]
  • açık renklendirme = \[\e[0m\]

Kullanıcı adını kırmızı yapmak için her zaman kökün biraz değiştirilmiş renk şemasını ekliyorum, bu yüzden her zaman kök olarak oturum açtığımı açıkça görüyorum (birçok terminal penceresi açıksa hataları önlemek için kullanışlıdır).

İçinde /root/.bash_profile:

PS1='\[\e[0;31m\]\u\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$ '

Çevrimiçi tüm SSH hesaplarım için, yerel veya uzak bir terminalde olup olmadığımı ayırt etmek için ana makine adını kırmızıya koyduğumdan emin olun. Sadece .bash_profilesunucudaki ev dizininde dosyayı düzenleyin .. Sunucuda .bash_profiledosya yoksa, oluşturabilirsiniz ve girişte kaynaklanmalıdır.

Bu sizin için beklendiği gibi çalışmıyorsa, MacOS'u çok sık kullanmadığım için lütfen aşağıdaki yorumlardan bazılarını okuyun.

Bunu uzak bir sunucuda yapmak istiyorsanız, ~/.bash_profiledosyanın var olup olmadığını kontrol edin . Değilse, oluşturun ve bir sonraki girişinizde otomatik olarak kaynaklanmalıdır.


2
ssh hesapları için çevrimiçi bash_profile'ı nasıl düzenlersiniz?
Andy

1
Bunun yerine, PS1daha iyi gibi:$PWD\uPS1=\[\e[0;31m\]$PWD\[\e[0m\]@\[\e[0;32m\]\h\[\e[0m\]:\[\e[0;34m\]\w\[\e[0m\]\$
cregox

1
Bilgi isteminin kodları hakkında daha fazla açıklama: wiki.archlinux.org/index.php/Color_Bash_Prompt#Step_by_step .
JohnK

1
Bu bağlantılar da yardımcı olabilir: ANSI renk kodu çıkış dizileri . PS1 kodları hakkında daha fazla bilgi .
JohnK

1
Bu renk kodlarını kullanarak El Capitan (OS X 10.11) doğru görüntülemek için PROMPT_COMMAND renkleri alma sorunları yaşıyordu. Kullanıldığında PROMPT_COMMAND, \033yerine sözdizimini kullanmanız gerektiği ortaya çıkıyor \e. Örnek istemi (sizin bu bulu önce renkli damgası eklemek ~/.bashrcveya ~/.bash_profile:)PROMPT_COMMAND="${PROMPT_COMMAND}; echo; echo -e '\033[0;35m'\[\$(date +%F\ %T)\]'\033[m'"
user5359531

42

MartinVonMartinsgrün ve 4Levels yöntemleri, Mac OS X Mountain Lion'da harika çalıştığını doğruladı.

Güncellemek için ihtiyacım olan dosya ~ / .profile idi.

Ancak, favori uygulamam iTerm 2'yi tavsiye etmeden bu soruyu bırakamadım .

iTerm 2, bir dosyadan genel renk şemaları yüklemenizi sağlar. Bir sürü renk düzenini denemek ve denemek gerçekten kolay.

İşte iTerm 2 penceresinin ve renk tercihlerinin ekran görüntüsü. iTerm2 Renk Tercihleri ​​Ekran Görüntüsü Mac

~ / .Profile dosyama aşağıdakileri ekledikten sonra iTerm 2 renkleri geçersiz kılabildi.

export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
export PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

İşte bazı güzel hazır ayarlarla harika bir havuz:

mbadolato tarafından Github Renk Şemaları

Bonus: Terminali fare hareketiyle anında gizlemek / göstermek için "Sistem genelinde bir kısayol tuşuyla iTerm2'yi göster / gizle" yi seçin ve anahtarı BetterTouchTool ile bağlayın.


1
iTerm2 sistemimde sık sık çöktü, bu yüzden oh-my-zsh github.com/robbyrussell/oh-my-zsh'a geçtim . Ayrıca temalar da mevcut
LuckyMalaka

Hey! Lütfen baskervillebağlantıyı uygun olana değiştirin . Yanlış kopyala yapıştır gibi görünüyor.
Jevgeni Smirnov

@NickWoodhams, ekran görüntüsünde kullandığınız renk teması nedir?
Indradhanush Gupta

1
@IndradhanushGupta Hangi renk şemasının olduğundan emin değil, bir süre önceydi. Ama şimdi Pure ZSH temasını kullanıyorum ve çok seviyorum. github.com/sindresorhus/pure
Nick Woodhams

1
Bu güzel bir renk şeması ve öğeleri türleri kontrol etmek için ne gerekli // dirs ve vb
rio

17

Ls'nizin renklendirilmesini istiyorsanız ~ / .bash_profile dosyanızı düzenlemeniz ve aşağıdaki satırı eklemeniz gerekir (önceden yazılmamışsa):

source .bashrc

Sonra ~ / .bashrc dosyasını düzenleyin veya oluşturun ve ls komutuna bir takma ad yazın:

alias ls="ls -G"

Şimdi source .bashrcbaşlatılmışsa bir terminal yazmanız veya sadece yeni bir terminal açmanız gerekir.

lsJuste'nizde daha fazla seçenek istiyorsanız kılavuzu ( man ls) okuyun . Seçenekler bir GNU / Linux sistemindekilerle tamamen aynı değildir.


6
Biraz daha iyi bir seçenek 'takma ad' tanımını 'export CLICOLOR = ""' ile değiştirmektir. Bunun avantajı, terminal oturumu sırasında mermileri değiştirseniz bile çalışmaya devam etmenin avantajına sahiptir (ortam değişkenleri devralındığı sürece - takma adlar olmadığı sürece).
Ned Deily

5

Tcsh kullanıyorsanız, ~/.cshrcdosyanızı satırları içerecek şekilde düzenleyin :

setenv CLICOLOR 1
setenv LSCOLORS dxfxcxdxbxegedabagacad

Martin'in dediği gibi, LSCOLORS kullanmak istediğiniz renk düzenini belirtir.

Kullanmak istediğiniz LSCOLORS oluşturmak için bu siteyi kontrol edin


4
bash
değerdir

1
Bence haklısın. Yeni bir mac aldım ve varsayılan olarak bash vardı. Sanırım BT varsayılan olarak tcsh için iş yerinde benim macs kurmaya devam etti.
smaccoun

1
Bağlantı sadece harika!
Sankalp

4

$ TERM ne verdiğini kontrol edin: benimki xterm-renk ve ls -alG sonra renklendirilmiş çıktı yapar.


capitan ile xterm-256colorhiçbir renk elde edemiyorum . CLICOLORve LSCOLORSbunu değiştirmeyin):
drevicko

2

Laboratuarda Mac OS X üzerinde çalıştığımda terminal renklerini Terminal'i (X11 yerine) kullanarak ve ardından profili (Mac menü çubuğundan) düzenlemekten alabildim. Arayüz renkler üzerinde biraz garip, ancak değiştirilmiş temayı varsayılan olarak ayarlamanız gerekiyor.

Diğer ayarlar düzenleme ile çalıştı .bashrc.

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.