Как делают Вас автоматически colorize выводы программы в оболочке удара?

Аналогично самому первому варианту, но без конечного разделителя.

ls -1 | paste -sd "," -
8
задан Lin 7 July 2009 в 04:23
поделиться

3 ответа

#!/bin/sh
redf=$(tput setaf 1)
redb=$(tput setab 1)
reset=$(tput op)
echo "${redf}red${reset} in front, ${redb}red${reset} in back"

См. terminfo для получения подробного списка возможностей терминала. $ TERM с суффиксом -m (например, ansi-m ) означает, что экран монохромный, но пока цвет работает, следующие возможности строки должны быть непусто:

       enter_bold_mode               bold         md        turn on bold (extra
                                                            bright) mode
       enter_italics_mode            sitm         ZH        Enter italic mode
       enter_reverse_mode            rev          mr        turn on reverse
                                                            video mode
       orig_pair                     op           op        Set default pair to
                                                            its original value
       set_a_background              setab        AB        Set background
                                                            color to #1, using
                                                            ANSI escape
       set_a_foreground              setaf        AF        Set foreground
                                                            color to #1, using
                                                            ANSI escape

Цвета 0-7 в значительной степени стандартные: черный, красный, зеленый, желтый, синий, пурпурный, голубой, белый. Более того, может не существовать или может быть более изменчивым.

7
ответ дан 5 December 2019 в 10:04
поделиться

Программа ack является версией grep который выделяет цветом совпадения регулярных выражений в своем выводе. Вы можете использовать его для раскраски или изучить его код Perl.

Другой вариант - передать по конвейеру GNU grep с помощью - color = always или - -color = auto аргумент.

5
ответ дан 5 December 2019 в 10:04
поделиться

Вы можете написать сценарий раскрашивания. Здесь отличный гид http://www.faqs.org/docs/abs/HTML/colorizing.html

3
ответ дан 5 December 2019 в 10:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: