6

Когда я печатаю

memcached -vv 2>&1 | grep --color=always "SET\|GET"

Я получаю хорошую статистику memcached

ПОЛУЧИТЬ АР-Сити-1

ПОЛУЧИТЬ rest-part-241

SET rest-part-241 Значение len составляет 685

ПОЛУЧИТЬ main-rest-list-1

Было бы замечательно передать это чему-нибудь и покрасить GET зеленым вместо стандартного красного.

Как я мог это сделать?

5 ответов5

6

Это может быть написано короче, но решение дает результат:

memcached -vv 2>&1 | sed -e "s/^GET.*$/\x1b[31m&\x1b[0m/" | sed -e "s/^SET.*$/\x1b[32m&\x1b[0m/"

Или, если вы хотите с цветами фона вместо цвета переднего плана:

memcached -vv 2>&1 | sed -e "s/^GET.*$/\x1b[41m&\x1b[0m/" | sed -e "s/^SET.*$/\x1b[42m&\x1b[0m/"

Таким образом, GET зеленый, SET красный.

4

для GNU grep это будет работать:

$ export GREP_COLOR="01;32"

где "01" означает: жирный, а "32" - зеленый. По умолчанию используется значение «01:31» (жирный красный). Другие цвета:

  • 31: красный
  • 32: зеленый
  • 33: желтый
  • 34: синий
  • 35: фиолетовый

Эти цвета могут выглядеть по-разному в зависимости от конфигурации вашего терминала, но вышеперечисленные являются стандартными цветами.

Если

$ env | grep GREP_COLORS

дает результат, эти настройки заменяют настройку GREP_COLOR (обратите внимание на "S"), более подробные настройки смотрите в grep manage с использованием GREP_COLORS.

1

попробуй сделать текстовую подсветку на основе egrep :)

0

Если вы хотите видеть разные слова в разных цветах, используйте colorize, например,

-1

Еще один альтернативный раскраситель текста на основе ack-grep:

https://github.com/paoloantinori/hhighlighter

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .