Câu trả lời:
Để thay đổi màu thư mục của bạn, hãy mở ~/.bashrc
tệp của bạn bằng trình chỉnh sửa của bạn
nano ~/.bashrc
và thực hiện các mục sau ở cuối tập tin:
LS_COLORS=$LS_COLORS:'di=0;35:' ; export LS_COLORS
Một số lựa chọn màu sắc đẹp (trong trường hợp 0;35
này là màu tím) là:
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
Số đầu tiên là kiểu (1 = đậm), theo sau là dấu chấm phẩy và sau đó là số thực tế của màu, các kiểu có thể (hiệu ứng) là:
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)
Các nền tảng có thể:
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
Tất cả các màu có thể:
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
Chúng thậm chí có thể được kết hợp, sao cho một tham số như:
di=1;4;31;42
trong biến LS_COLORS của bạn sẽ làm cho các thư mục xuất hiện trong văn bản màu đỏ được gạch chân đậm với nền màu xanh lá cây!
Để kiểm tra tất cả các màu sắc và kiểu dáng trong thiết bị đầu cuối của bạn, bạn có thể sử dụng một trong:
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
Bạn cũng có thể thay đổi các loại tệp khác khi sử dụng lệnh ls bằng cách xác định từng loại với:
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
Một danh sách đầy đủ hơn có sẵn tại Bigsoft - Định cấu hình LS_COLORS .
Trên một số bản phân phối, bạn cũng có thể muốn thay đổi màu nền cho ow
"( OTHER_WRITABLE
) có mặc định là không thể đọc được", ví dụ như văn bản màu xanh không đậm trên nền màu xanh lá cây.
Bạn có thể sử dụng ví dụ LS_COLORS="$LS_COLORS:di=1;33"
ở cuối .bashrc
tập tin của bạn , để có được một văn bản màu cam đậm dễ đọc trên nền đen.
Sau khi bạn thay đổi tệp .bashrc, để thay đổi có hiệu lực, bạn sẽ phải khởi động lại trình bao của mình hoặc chạy source ~/.bashrc
.
Lưu ý: Bạn có thể kết hợp nhiều lệnh hơn với dấu hai chấm , ví dụ:
LS_COLORS=$LS_COLORS:'di=1;33:ln=36' ; export LS_COLORS; ls
Nguồn:
.bashrc
- một số màu hoạt động, một số màu khác trông khác. Các thư mục có màu xanh lá cây thay vì màu xanh lam, nhưng các tệp trông chính xác. Nó có thể là gì?
/etc/bash.bashrc
LS_COLORS=$LS_COLORS:'tw=01;35:ow=01;35:' ; export LS_COLORS
Rất đơn giản. Thêm ba dòng này vào ~ / .bashrc
$ vi ~/.bashrc
export LS_OPTIONS='--color=auto'
eval "$(dircolors -b)"
alias ls='ls $LS_OPTIONS'
Nếu bạn muốn áp dụng các thay đổi trong phiên bash đang chạy, hãy chạy:
source ~/.bashrc
source ~/.bashrc
mỗi lần đăng nhập. Có cách nào khắc phục vấn đề này không?
echo $SHELL
từ dấu nhắc cmd? Tôi cá là KHÔNG /bin/bash
. Bạn có thể tìm thấy hoạt động của bạn .profile
hoặc .login
và thêm source $HOME/.bashrc
vào cuối. Chúc may mắn.
Đây là một bộ sưu tập các phần mở rộng: ánh xạ màu, phù hợp để sử dụng làm biến môi trường LS COLORS của bạn.
Hơn nữa với câu trả lời của Hegazi, bạn thực sự có thể kiểm soát màu thư mục và rất nhiều màu khác bằng cách sử dụng lệnh dircolors. Bạn có thể tạo một tập tin cấu hình được ghi lại tốt.
Bạn có thể tạo một tệp .dircolor trong thư mục chính của bạn như sau:
dircolors -p > ~/.dircolors
Sau đó, trong tệp ~ / .bashrc của bạn thêm dòng
eval "`dircolors -b ~/.dircolors`"
alias ls='ls --color=auto'
Điều này sẽ tạo ra biến $ LS_COLORS cho bash. Cờ -c sẽ đặt nếu cho csh. Nó cũng gắn cờ lệnh ls để hiển thị màu.
Chỉnh sửa giá trị của thuộc tính DIR như trên trong màu tệp ~ / .dircolor để thay đổi màu của thư mục (hoặc bất kỳ loại tệp nào được bao gồm cho các màu khác). Bạn cũng có thể thay đổi màu sắc của các tệp cụ thể hoặc xác định màu của riêng bạn.
Các --color=auto
tùy chọn không làm việc cho tôi sử dụng iTerm2 trên máy Mac của tôi. Các -G
tùy chọn hoạt động mặc dù. Tôi đặt các bí danh sau trong các thư mục của tôi ~/.profile
và bây giờ được tô màu và có thêm một dấu vết /
:
alias ls='ls -F -G'
Cách tiếp cận của tôi đối với lệnh ls với các tùy chọn thường được sử dụng:
thêm các dòng sau vào một tệp có tên ~ / .alias
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"
thêm các dòng sau vào ~ / .bashrc
if [ -f ~/.alias ]; then
. ~/.alias
fi
--color=auto
vào ls
bí danh - các bí danh khác với kế thừa cài đặt
LS_COLORS=$LS_COLORS:'di=1;44:' ; export LS_COLORS
các thư mục hiển thị màu trắng đậm trên nền màu xanh.