В этом посте вы найдёте скриншоты и конфиги ещё одного раскрашивания цветом psql. Целью было сделать такую цветовую схему, которая одинаково хорошо бы смотрелась на терминалах со светлым и тёмным фонами.
Пример файла .bashrc
:
#!/bin/bash
export YELLOW=`echo -e '\033[1;33m'`
export LIGHT_CYAN=`echo -e '\033[1;36m'`
export GREEN=`echo -e '\033[0;32m'`
export NOCOLOR=`echo -e '\033[0m'`
export LESS="-iMSx4 -FXR"
export PAGER="sed \"s/^\(([0-9]\+ [rows]\+)\)/$GREEN\1$NOCOLOR/;s/^\(-\[\ RECORD\ [0-9]\+\ \][-+]\+\)/$GREEN\1$NOCOLOR/;s/|/$GREEN|$NOCOLOR/g;s/^\([-+]\+\)/$GREEN\1$NOCOLOR/\" 2>/dev/null | less"
И соответствующий ему пример .psqlrc
:
\set QUIET 1
\set ON_ERROR_ROLLBACK interactive
\set VERBOSITY verbose
\x auto
\set PROMPT1 '%[%033[38;5;27m%]%`hostname -s`%[%033[38;5;102m%]/%/ %[%033[31;5;27m%]%`/var/lib/pgsql/.role.sh`%[%033[0m%] %# '
\set PROMPT2 ''
\set HISTFILE ~/.psql_history- :DBNAME
\set HISTCONTROL ignoredups
\pset null [null]
\pset pager always
\timing
\unset QUIET
Скрипт для определения роли машины (/var/lib/pgsql/.role.sh
) весьма простой:
#!/bin/bash
res=`psql postgres -t -A -c 'show transaction_read_only;'`
if [ $res == 'off' ]; then
echo 'M'
else
echo 'R'
fi
И конечно же, скриншоты psql с такими настройками:
Наслаждайтесь!
Comments
comments powered by Disqus