Yanıtlar:
Dizin renklerinizi değiştirmek için ~/.bashrc
dosyanızı düzenleyicinizle açın
nano ~/.bashrc
ve dosyanın sonunda aşağıdaki girişi yapın:
LS_COLORS=$LS_COLORS:'di=0;35:' ; export LS_COLORS
Bazı güzel renk seçenekleri (bu durumda 0;35
mor renkte):
Blue = 34
Green = 32
Light Green = 1;32
Cyan = 36
Red = 31
Purple = 35
Brown = 33
Yellow = 1;33
Bold White = 1;37
Light Grey = 0;37
Black = 30
Dark Grey= 1;30
İlk sayı stildir (1 = kalın), ardından noktalı virgül ve ardından rengin gerçek sayısı, olası stiller (efektler):
0 = default colour
1 = bold
4 = underlined
5 = flashing text (disabled on some terminals)
7 = reverse field (exchange foreground and background color)
8 = concealed (invisible)
Olası arka planlar:
40 = black background
41 = red background
42 = green background
43 = orange background
44 = blue background
45 = purple background
46 = cyan background
47 = grey background
100 = dark grey background
101 = light red background
102 = light green background
103 = yellow background
104 = light blue background
105 = light purple background
106 = turquoise background
107 = white background
Mümkün olan tüm renkler:
31 = red
32 = green
33 = orange
34 = blue
35 = purple
36 = cyan
37 = grey
90 = dark grey
91 = light red
92 = light green
93 = yellow
94 = light blue
95 = light purple
96 = turquoise
97 = white
Bunlar bile birleştirilebilir, öyle ki bir parametre:
di=1;4;31;42
LS_COLORS değişkeninizde dizinlerin yeşil arka plana sahip kalın altı çizili kırmızı metinlerle görünmesini sağlar!
Terminalinizde tüm bu renkleri ve stilleri test etmek için şunlardan birini kullanabilirsiniz:
for i in 00{2..8} {0{3,4,9},10}{0..7}
do echo -e "$i \e[0;${i}mSubdermatoglyphic text\e[00m \e[1;${i}mSubdermatoglyphic text\e[00m"
done
for i in 00{2..8} {0{3,4,9},10}{0..7}
do for j in 0 1
do echo -e "$j;$i \e[$j;${i}mSubdermatoglyphic text\e[00m"
done
done
Ls komutunu kullanırken her bir tür ile tanımlayarak diğer dosya türlerini de değiştirebilirsiniz:
bd = (BLOCK, BLK) Block device (buffered) special file
cd = (CHAR, CHR) Character device (unbuffered) special file
di = (DIR) Directory
do = (DOOR) [Door][1]
ex = (EXEC) Executable file (ie. has 'x' set in permissions)
fi = (FILE) Normal file
ln = (SYMLINK, LINK, LNK) Symbolic link. If you set this to ‘target’ instead of a numerical value, the color is as for the file pointed to.
mi = (MISSING) Non-existent file pointed to by a symbolic link (visible when you type ls -l)
no = (NORMAL, NORM) Normal (non-filename) text. Global default, although everything should be something
or = (ORPHAN) Symbolic link pointing to an orphaned non-existent file
ow = (OTHER_WRITABLE) Directory that is other-writable (o+w) and not sticky
pi = (FIFO, PIPE) Named pipe (fifo file)
sg = (SETGID) File that is setgid (g+s)
so = (SOCK) Socket file
st = (STICKY) Directory with the sticky bit set (+t) and not other-writable
su = (SETUID) File that is setuid (u+s)
tw = (STICKY_OTHER_WRITABLE) Directory that is sticky and other-writable (+t,o+w)
*.extension = Every file using this extension e.g. *.rpm = files with the ending .rpm
Bigsoft'ta daha eksiksiz bir liste var - LS_COLORS Konfigürasyonu .
Bazı dağıtımlarda, arkaplan rengini ow
"( OTHER_WRITABLE
) varsayılanı okunamayan" olan arka plan rengini , örneğin yeşil zemin üzerine koyu mavi olmayan bir metne değiştirmek isteyebilirsiniz .
Dosyanızın LS_COLORS="$LS_COLORS:di=1;33"
sonunda, örneğin .bashrc
siyah arka plan üzerine güzel, okunaklı, koyu bir turuncu metin almak için kullanabilirsiniz.
.Bashrc dosyanızı değiştirdikten sonra, değişiklikleri uygulamak için kabuğunuzu yeniden başlatmanız veya çalıştırmanız gerekir source ~/.bashrc
.
Not: Örneğin, iki nokta üst üste ile daha fazla komut birleştirebilirsiniz.
LS_COLORS=$LS_COLORS:'di=1;33:ln=36' ; export LS_COLORS; ls
Kaynak:
.bashrc
- bazı renkler çalışıyor, diğerleri farklı görünüyor. Klasörler mavi yerine örneğin yeşil, ancak dosyalar doğru görünüyor. Ne olabilirdi?
/etc/bash.bashrc
LS_COLORS=$LS_COLORS:'tw=01;35:ow=01;35:' ; export LS_COLORS
Çok basit. Bu üç satırı ~ / .bashrc dosyasına ekleyin.
$ vi ~/.bashrc
export LS_OPTIONS='--color=auto'
eval "$(dircolors -b)"
alias ls='ls $LS_OPTIONS'
Değişiklikleri çalışan bir bash oturumunda uygulamak istiyorsanız, şunu çalıştırın:
source ~/.bashrc
source ~/.bashrc
her giriş yaptığımda kaçmam gerekiyor. Bunu düzeltmenin bir yolu var mı?
echo $SHELL
cmd isteminden yazdığınızda ne alıyorsunuz ? Eminim öyle değildir /bin/bash
. Etkininizi bulabilir .profile
ya da sonunda .login
ekleyebilirsiniz source $HOME/.bashrc
. İyi şanslar.
Bu bir uzantı koleksiyonudur: LS COLORS ortam değişkeni olarak kullanmak için uygun renk eşlemeleri.
Hegazi'nin cevabına ek olarak, dircolors komutunu kullanarak dizin rengini ve diğer birçok rengi kontrol edebilirsiniz. İyi belgelendirilmiş bir yapılandırma dosyası oluşturabilirsiniz.
Giriş dizininizde aşağıdaki gibi bir .dircolor dosyası oluşturabilirsiniz:
dircolors -p > ~/.dircolors
Sonra ~ / .bashrc dosyanıza satırları ekleyin
eval "`dircolors -b ~/.dircolors`"
alias ls='ls --color=auto'
Bu bash için bir $ LS_COLORS değişkeni yaratacaktır. Csh için -c bayrağı belirlenir. Ayrıca ls komutunu renkli olarak görüntülemek için işaretler.
Dizinin rengini (veya diğer renkler için dahil olan diğer dosya türlerinden herhangi birini) değiştirmek için ~ / .dircolor dosya rengindeki DIR özniteliğinin değerini düzenleyin. Ayrıca, belirli dosyaların renklerini değiştirebilir veya kendinizinkini tanımlayabilirsiniz.
Bu --color=auto
seçenek benim için Mac'imde iTerm2 kullanarak çalışmıyor. -G
Seçenek olsa çalışır. Aşağıdaki takma adı benim dizime koydum ~/.profile
ve şimdi dizinler renkli ve sonunda bir iz /
bırakıyor:
alias ls='ls -F -G'
Sık kullanılan seçeneklerle ls komutunu benim yaklaşımım:
aşağıdaki satırları ~ / .alias adlı bir dosyaya ekleyin.
alias ll='ls -lhF --color=auto'
alias llt='ls -lht --color=auto'
alias lla='ls -alF --color=auto'
alias la='ls -A --color=auto'
alias l='ls -CF --color=auto'
alias ls="ls --color=auto"
~ / .bashrc içine aşağıdaki satırları ekleyin
if [ -f ~/.alias ]; then
. ~/.alias
fi
--color=auto
için ls
takma - devralır ile diğer takma adlar ayarı
LS_COLORS=$LS_COLORS:'di=1;44:' ; export LS_COLORS
hangi dizinde mavi arka plan üzerinde koyu beyaz dizinleri gösterir.