Hãy thử chức năng bash này trong giao diện điều khiển. Một cách phù hợp, nó không hoạt động trong một thiết bị đầu cuối X (tôi nghĩ vì các tab). Đặc biệt là kiểm tra ba tập tin được sử dụng cuối cùng, cụ thể là
/sys/module/vt/parameters/default_red
/sys/module/vt/parameters/default_grn
/sys/module/vt/parameters/default_blu
clr () {
clear # GFX bug otherwise
setterm -regtabs 4
Color_names="bla red gre yel blu mag cya whi"
Color_arr=($Color_names)
tput setaf 4
tput setab 7
echo -n " normal "
tput sgr0
echo -n " "
tput setaf 7
tput setab 4
echo " bright "
tput sgr0
for cmd in sgr0 bold
do
tput $cmd
for m in 0 1 2 3 4 5 6 7
do
tput setaf $m
echo -n ${Color_arr[$m]}" "
done
done
echo
tput sgr0
cat /sys/module/vt/parameters/default_red \
/sys/module/vt/parameters/default_grn \
/sys/module/vt/parameters/default_blu | sed s/,0/", "/g | \
sed s/^0/" "/g | \
tr "," "\t"
}
Chỉnh sửa để phản hồi bình luận
Ví dụ: thay đổi chữ số thứ hai trong tệp màu xanh lá cây ( sys/module/vt/parameters/default_grn
) thành 170
- điều này sẽ cho màu thứ hai (với chỉ số 1) nhiều màu xanh lục như màu đỏ và không có màu xanh lam (ít nhất là trong trường hợp của tôi, vì tôi có chữ số tương ứng trong default_red
170
, và 0
trong default_blu
).
Bây giờ, gõ tput setaf 1; echo hi
. Ở đây bạn đặt màu nền trước thành màu với chỉ số 1 (màu bạn đã thay đổi), sau đó bạn in nó. (Lưu ý oneliner có dấu hai chấm để phân tách các lệnh, nếu không, dấu nhắc của bạn có thể đặt lại tput
ở giữa.)
Nếu nó xuất hiện giống như mọi khi, hãy thử echo -n '\033]R'
và sau đó tput
dòng một lần nữa. Bây giờ, cả hai chữ "hi" nên có màu vàng.
Hãy cho tôi biết nếu bạn làm cho nó hoạt động (hoặc không).