Làm thế nào tôi có thể làm cho bash trông có màu như thế này?

Làm thế nào tôi có thể làm cho bash trông có màu như thế này?

Câu trả lời:
Mở ~/.bashrctrong trình soạn thảo văn bản và dòng uncomment:
#force_color_prompt=yes
được:
force_color_prompt=yes
lưu rồi thực hiện source ~/.bashrc
force_color_prompt=yescách dự định cho phép màu sắc? Đối với tôi buộc âm thanh như một cách giải quyết.
Tôi đã đưa ra giải pháp này:
sao chép này và thêm nó vào cuối tệp .bashrc:
PS1='\[\033[1;36m\]\u\[\033[1;31m\]@\[\033[1;32m\]\h:\[\033[1;35m\]\w\[\033[1;31m\]\$\[\033[0m\] 'lưu tệp và khởi động lại bashrc:
source ~/.bashrcĐể biết danh sách đầy đủ các màu có sẵn và các tùy chọn khác, hãy tìm các liên kết sau:
Một phiên bản 'chung chung' hơn một chút - nên hoạt động với môi trường đa dạng:
(phụ thuộc vào terminfo)
Chèn cái này vào $HOME/.bashrc:
function fgtab {
echo "tput setf/setb - Foreground/Background table"
for f in {0..7}; do
for b in {0..7}; do
echo -en "$(tput setf $f)$(tput setb $b) $f/$b "
done
echo -e "$(tput sgr 0)"
done
}
# The prompt in a somewhat Terminal -type independent manner:
cname="$(tput setf 3)"
csgn="$(tput setf 4)"
chost="$(tput setf 2)"
cw="$(tput setf 6)"
crst="$(tput sgr 0)"
PS1="\[${cname}\]\u\[${csgn}\]@\[${chost}\]\h:\[${cw}\]\w\[${csgn}\]\$\[${crst}\] "
Sau đó thực hiện source ~/.bashrc.
Sau đó, fgtabsẽ hiển thị một bảng màu với các số. Các số đó là cho tput setf nvà tput setb ntrong đó 'n' là số, 'f' là viết tắt của 'foreground' và 'b' là viết tắt của màu 'nền'.
tput sgr 0 sẽ đặt lại màu nền trước và màu nền về mặc định.
Và như bạn có thể thấy, việc thay đổi màu sắc được sử dụng cho lời nhắc trở nên thực sự dễ dàng (chỉ cần chỉnh sửa cùng một số $HOME/.bashrctheo ý muốn).
Thêm một $(tput setb n)trong $cnamenếu bạn muốn có TẤT CẢ lời nhắc với nền n.
man 5 terminfocho thấy những gì tputcó thể được sử dụng với, đó là một chút kỹ thuật mặc dù vậy "hãy chú ý" - nhưng một chút đoán và thử nghiệm thực sự có thể cho phép bạn làm cho nó hoạt động.