Я пишу пользовательскую команду в качестве псевдонима, использующего выход awk для печати в разных цветах.Цвет Awk не отображается в Xterm
Небольшой фрагмент, который я придумал, отлично работает в KDE Konsole, но не в xterm или gnome-terminal.
Моя оболочка является BASH на SLES11 и терминал установлен в XTERM
[email protected]:~> env |grep -i term
TERM=xterm
COLORTERM=1
Псевдоним определяется следующим образом:
alias myCustomPS="\
awk '{ \
gsub(/\.CONTEXT/,\"\", \$11); \
split(\$11,v,\"_D\"); \
split(\$13,h,\".\"); \
if (\$1==\"usr1\")
printf \"pid [\033[1;37;48;2;0;0;128m %5s \033[0m] [\033[1;37;48;2;0;0;128m %.8s \033[0m] \033[1;37;48;2;0;0;128m %-8.10s \033[0m D%-8s\n\", \$2, \$1, h[1], v[2]; \
else if (\$1==\"usr2\") \
printf \"pid [\033[1;37;48;2;0;170;170m %5s \033[0m] [\033[1;37;48;2;0;170;170m %.8s \033[0m] \033[1;37;48;2;0;170;170m %-8.10s \033[0m D%-8s\n\", \$2, \$1, h[1], v[2]; }'"
выход я правильно отображать только в Konsole.
Оба xterm и gnome-terminal вместо этого не отображают его правильно. В Xterm никакого цвета вообще не отображается, в gnome-terminal отображается только цвет шрифта, нет фона.
любая идея или альтернативные способы повсеместного раскрашивания вывода awk? Спасибо, Roberto
Это действительно сложно проверить без репрезентативного ввода образца. Не могли бы вы предоставить некоторые из них или, возможно, скрыть сценарий до минимума, который пытается раскрасить любой случайный фрагмент текста? – tripleee
Не выполняйте управляющие последовательности жесткого кода. Используйте 'tput' или аналогичный запрос терминалу для последовательности, используемой для текущего типа терминала. Я собираюсь предположить, что эти последовательности просто неверны для xterm или gnome-terminal. Я знаю, что, по крайней мере, в поддерживаемых цветах «Konsole» предположительно имеет гораздо более широкую поддержку того, какие цвета доступны (какой-либо произвольный цвет, на самом деле я считаю). –
Если я правильно помню, вам нужно установить TERM на xterm-color или что-то подобное, чтобы получить цвета в xterm, попробуйте посмотреть http://stackoverflow.com/questions/10003136/what-is-the-difference-between-xterm -color-xterm-256color – rasmusm