☰ Оглавление

Приёмы настройки консольных команд в Linux и FreeBSD

Настройка grep

Для того, чтобы grep подсвечивал вывод, полезно установить такие переменные

export GREP_OPTIONS='--color=always'
export GREP_COLORS='fn=36:ms=01;32'

Первая включает подсветку, вторая устанавливает приятные глазу цвета. Если вам нравятся другие, смотрите соответствующие разделы man.

Настройка less

Я предпочитаю такие настройки less:

export LESS='FRSXQ'
export LESSCHARSET='utf-8'

Такие флаги приводят к адекватному отображение раскрашенного текста, выводят строки без переносов (наиболее спорный момент, вам это может не понравиться). Ну и кодировка UTF-8, у меня это любимая кодировка.

Настройка mercurial

Полезная опция, говорящая сама за себя:

export HGENCODING='utf-8'

Настройка темы mc

Я использую xterm и предпочитаю тёмную 256-цветную схему для mc. Поэтому мои настройки таковы:

export TERM=xterm-256color
export MC_SKIN=xoria256

Вы можете подправить по-вкусу.

Настройка цветов в команде ls во FreeBSD

Команда ls во FreeBSD работает с цветами, не как в Linux. Подробно об этом можно прочитать в man 1 ls, а здесь я приведу скриптик для очень простой настройки любой раскраски.

Предлагаю разместить в .profile, или другом инициализационном скрипте, примерно следующие инструкции:

# эти переменные изменять не надо
black='a'
red='b'
green='c'
brown='d'
blue='e'
magenta='f'
cyan='g'
light_grey='h'
bold_black='A'
bold_red='B'
bold_green='C'
yellow='D'
bold_blue='E'
bold_magenta='F'
bold_cyan='G'
bold_light_grey='H'
default='x'

# -------------------------------------------------
# а вот тут вы можете установить любые цвета для
# разных элементов файловой системы (см. комментарии),
# используя имена переменных, инициализированных выше;
# для каждого элемента указывается два цвета:
# цвет букв и цвет фона
#
xx00="$bold_blue$default"  # directory
xx01="$cyan$default"       # symbolic link
xx02="$magenta$default"    # socket
xx03="$magenta$default"    # pipe
xx04="$green$default"      # executable
xx05="$yellow$default"     # block special
xx06="$brown$default"      # character special
xx07="$bold_green$green"   # executable with setuid bit set
xx08="$bold_green$default" # executable with setgid bit set
xx09="$bold_blue$blue"     # directory writable to others, with sticky bit
xx10="$bold_blue$blue"     # directory writable to others, without sticky bit
#
# -------------------------------------------------

# экспортируем необходимые переменные
LSCOLORS="$xx00$xx01$xx02$xx03$xx04$xx05$xx06$xx07$xx08$xx09$xx10"
export LSCOLORS
CLICOLOR="YES"
export CLICOLOR

Вы можете установить любые цвета; сейчас выбраны цвета, в духе Linux-традиции, правда с небольшими моими дополнениями.

Если ваши bash не «чувствует» изменения размера окна

То это очень легко вылечить. Прописываем куда-нибудь в .bashrc одну строчку:

shopt -s checkwinsize

Приведение bash в чувства

Бывает, что перестают работать консоли, выдаётся сообщение вида:

subshell.c: read (subshell_pty...): No such file or directory

Решается проблема просто:

killall -CONT bash