Программа nhcolor — это простая в использовании бесплатная утилита для выделения текста заданным цветом в командной строке Winfdows Это делает вывод консольных программ или bat файлов более удобным для восприятия, показывая пользователю важные фрагменты.

Возможности

Вывод заданного текста в фиксированном цвете

Этот режим предназначен для выделения цветом информационных сообщений в bat файлах. Ведь гораздо нагляднее смотрится протокол работы, когда этапы работы командного файла подсвечены другим цветом, в отличие от стандартного echo:

Этот пример показывается вывод строки голубым цветом:

nhcolor 03 Подготовка файлов для резервного копирования...

Вывод потока stdin в фиксированном цвете

В этом режиме программа печатает весь текст, приходящий в stdin, указанным цветом. Единственный параметр – это код цвета, например:

nhcolor 0f

В этом режиме можно отделить вывод определенной программы от других программ в выводе bat файла . Например, это может быть вывод команды dir после выполнения каких-то операций над файлами ярким цветом, по сравнению с другими сообщениями:

... операции копирования / перемещения / переименования
dir | nhcolor 0f

Также этот режим дает возможность выделить цветом сообщения об ошибках, если перенаправить поток stderr другой программы в nhcolor. Например, эта строка в bat файле выводит обычные сообщения стандартным цветом (белым), а сообщения об ошибках из stderr – красным:

dir backup*.dat 2>&1 1>&3 | nhcolor.exe 0c

Вот как это выглядит в командной строке:

Пример программы nhcolor.exe с выводом красным цветом сообщений об ошибках из потока STDERR

Этот режим позволяет легко заметить сообщения об ошибках при пролистывании даже вывода из большого количества строк.

Вывод потока stdin с выбором цвета для части строки или всей строки

В этом режиме цвет каждой строки выбирается исходя из ее содержания с помощью фильтров. Каждый фильтр цветом текста и задается регулярным выражением для поиска и, если в строке найдены вхождения, то вхождения будут напечатаны цветом этого фильтра. Создавая дополнительные фильтры, можно строить целые цветовые схемы.

Например, эта команда запускает bat файл и передает его вывод в nhcolor с тремя фильтрами – при вхождении слова success (успешно) цвет части строки будет зеленым, слова warning (предупреждение) – жёлтым, и при вхождении error (ошибка) – красным, остальное текст будет стандартным (белым):

my.bat | nhcolor 0a,success 0e,warning 0c,error

При использовании регулярных выражений с символами начала и конца строки ^ и $ можно выделять всю строку.

my.bat | nhcolor 0a,"^.*success.*$" 0e,"^.*warning.*$" 0c,"^.*error.*$"
Пример nhcolor.exe с выводом текста разными цветами, используя фильтры на основе регулярных выражений

Вывод содержимого текстового файла

Это может быть полезно при просмотре лог файлов. Чтобы выделить цветом фрагменты текстового файла при его просмотре в командной строке, можно использовать режим обработки stdin.

Например, через type

type 1.log | nhcolor 0a,success 0e,warning 0c,error

Или через оператор перенаправления

nhcolor 0a,success 0e,warning 0c,error < 2.log

Почему nhcolor

Программа предлагает широкие возможности для того, чтобы сделать просмотр текста в командной строке удобным и наглядным

  • выделение цветом части строки или строки целиком, сочетание нескольких цветов в одной строке
  • не требуется подготовки выводимого текста, такого как прописывание управляющих последовательностей, а значит подходит для любых имеющихся bat файлов и программ
  • работа с фиксированным текстом, с динамическим текстом через stdin
  • программа проста в установке и использовании, не имеет зависимостей от других программных пакетов, распространяется свободно для коммерческого и некоммерческого применения

Другие варианты, такие как ANSI последовательности, такими возможностями не обладают.

Скачать nhcolor

Прямая ссылка для загрузки программы nhcolor

Также загрузить программу nhcolor можно со страницы загрузки.

Узнать больше

Список цветов для color, nhcolor

0 = Черный 8 = Серый
1 = Синий 9 = Светло-синий
2 = Зеленый A = Светло-зеленый
3 = Голубой B = Светло-голубой
4 = Красный C = Светло-красный
5 = Лиловый D = Светло-лиловый
6 = Желтый E = Светло-желтый
7 = Белый F = Ярко-белый

Регулярные выражения

В программе используется синтаксис ECMAScript, описание можно найти в статье TR1 Regular Expressions.

Статья о том, как как написать и проверить регулярные выражения

Наши соцсети