Установили ли вы ENABLED="true"
в /etc/default/sysstat
(он false
по умолчанию при установке в Ubuntu и, возможно, других дистрибутивах)?
Тогда вы должны быть в состоянии запустить его с sudo service sysstat restart
Установка цвета фона 1 (красный):
printf %b '\e[41m' '\e[8]' '\e[H\e[J'
Первый escape(setab
)устанавливает цвет фона 1, второй escape определяет текущую пару переднего плана -фона как значение по умолчанию , а третий(clear
)очищает экран.
Отныне «красный» будет фоном по умолчанию:
printf %b 'World\e[42mWide\e[mWeb\n'
Обратите внимание, что установка зеленого фона с помощьюsetab 2
(\e[42
)и последующая очистка атрибутов с помощьюsgr0
(\e[m
)не стирают наши настройки.
Кроме того, вы можете переопределить, какой цвет 0 (фон по умолчанию, черный )означает через «установить палитру» (aka initc
= «инициализировать _цвет» )escape:
printf %b '\e[40m' '\e[8]' # set default background to color 0 (black)
printf %b '\e]P0ff0000' # redefine color 0 as 'red'
Последний принимает аргумент формы nRRGGBB
, где n
— номер цвета, а RRGGBB
— шестнадцатеричная тройка, определяющая цвет.
Этот побег также поддерживается замазкой .
Описание этих и других функций см. в справочных страницах консоли _коды (4 )и terminfo (5 ).
Я тоже не смог:
a )изменить цвет фона экрана, не стирая с него все, с помощью clear
.
b )принудительное обновление поля экрана, отличного от -, без переключения назад -и -вперед между виртуальными терминалами с помощью Control -Alt -Fn.
Это устанавливает светло-зеленый фон без необходимости очищать экран:
printf %b '\e]11;#ccffcc\a'
Также отлично работает на mlterm
, rxvt
, gnome-terminal
, konsole
и т. д.
Альтернативная форма \e]11;rgb:cc/ff/cc\a
(, взятая из здесь ), не поддерживается в konsole
(, протестирована с версией 12.16.0 ).
Это не будет работать внутри tmux
или screen
.
Все побеги xterm
задокументированы в файле ctlseqs.txt из его исходного кода.
Примечание:
Некоторые побеги (например. \e[8]
или\e]11;...\a
)не включены в terminfo и вообще не могут использоваться с tput
, в то время как другие (, например.initc
)слишком неуклюжи, чтобы их можно было использовать в чистом виде.
Доступная для grepping версия базы данных terminfo может быть получена с помощью такой команды, как:find /usr/share/terminfo -type f -printf '%f\n' | xargs -n1 infocmp -0 -A /usr/share/terminfo