Так как это все процессы ядра, они не присоединены к TTY (следовательно ?
значение в TTY
поле).
Можно записать это как любой из тех:
echo -e "\e[1;38;05;${code}m $code: Test"
echo -e "\e[1m\e[38;05;${code}m $code: Test";
echo -e "\e[38;05;${code}m\e[1m $code: Test";
echo -e "\e[38;05;${code};1m $code: Test";
tput bold; tput setaf "$code" # provided the terminfo database is
# properly populated
Можно работать tput bold
только когда-то, если Вы не сбрасываете полужирность с a tput sgr0
или \e[m
или \e[0m
.
Для добавления примера Stephane вот, быстрая функция оболочки для списка всех 256 цветов:
#!/bin/bash
esc=$'\033'
for row in {0..15} ;
do
rowtext=
for col in {0..15};
do
color=$(( $row * 16 + $col))
BG="${esc}[48;5;${color}m"
rowtext=${rowtext}$BG\
if [[ $color -lt 100 ]]; then rowtext=${rowtext}$BG\ ;fi
if [[ $color -lt 10 ]]; then rowtext=${rowtext}$BG\ ;fi
rowtext=${rowtext}$BG${color}
rowtext=${rowtext}$BG\
done
echo "${rowtext}${esc}[00m "
done
Это - быстрый "порт" функции zsh, которую я должен колотить. Я, кажется, работаю (в ударе), или по крайней мере достаточно хорошо.
Число цветового кода отображено в цветовом блоке. Это - то, что Вы использовали бы в своей подсказке или в другом месте выбирать цвет.
BG
потерянный. Необходимо использовать escape-последовательности вместо этого для предотвращения этого вида неудачи. Вы не можете использовать $BG[0]
в ударе необходимо записать это ${BG:0:1}
(для массива это было бы ${array[0]}
).
– Gilles 'SO- stop being evil'
03.10.2013, 00:48