Аналогично самому первому варианту, но без конечного разделителя.
ls -1 | paste -sd "," -
#!/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 в значительной степени стандартные: черный, красный, зеленый, желтый, синий, пурпурный, голубой, белый. Более того, может не существовать или может быть более изменчивым.
Программа ack является версией grep который выделяет цветом совпадения регулярных выражений в своем выводе. Вы можете использовать его для раскраски или изучить его код Perl.
Другой вариант - передать по конвейеру GNU grep с помощью - color = always
или - -color = auto
аргумент.
Вы можете написать сценарий раскрашивания. Здесь отличный гид http://www.faqs.org/docs/abs/HTML/colorizing.html