Видео смотреть бесплатно

Смотреть красивый видео

Официальный сайт tali-sk 24/7/365

Смотреть видео бесплатно

h0rr0rr_drag0n 04.05.2009 14:52

Tips & tricksИзменение реакции bash на ввод несуществующей команды.

В Debian и Ubuntu bash пропатчен специальным патчем, который добавляет функцию, обрабатывающую ввод несуществующей команды.



Функция эта называется command_not_found_handle. В Ubuntu она уже используется для вывода сообщения о возможности установить недостающую программу.

Естественно эту функцию можно переопределить в .bashrc, приспособив ее под свои нужды. У меня, например, просто выводится сообщение об отсутствии введенной команды.



function command_not_found_handle {

EXECUTED_CMD=`history | tail -n 1 | awk '{$1 = ""; print $0}' | colrm 1 1`

echo -e "ОноТолЕй СъеЛ \033<1;37m$EXECUTED_CMD\033<0;37m. ПЫщЬ пЫщЬ!!!111"

echo -e "Воены УПЧК следят за тобой "'$USERNAME'

}







Тэги: bash command_not_found_handle
+ 9 -
Похожие Поделиться

xT 04.05.2009 15:00 #
+ 5 -
можно $USERNAME заменить на $(whoami)
=)
muhas 04.05.2009 15:14 #
+ 3 -
ввожу sl
вижу ответ zsh: Заменить 'sl' на 'ls' ? sl
:)


PS. '$USERNAME' никогда не выведет имя юзверя ибо одинарные ковычки
muhas 04.05.2009 15:15 #
+ 0 -
s/it>sl/it>/g
h0rr0rr_drag0n 04.05.2009 15:43 #
+ 0 -
$USERNAME' никогда не выведет имя юзверя ибо одинарные ковычки

Так и было задумано =))
krig 04.05.2009 15:37 #
+ 1 -
В функции небольшая бага, которая меняет цвет текста в консоли (у меня по умолчанию зеленый).


Думаю имеет смысл просто выделять команду полужирным, без изменения цвета.
h0rr0rr_drag0n 04.05.2009 15:45 #
+ 0 -
Это фича.)) Функция меняет цвет текста на белый - смотри escape-коды перед "пыщь-пыщь". Чтобы снова был зеленый - пропиши туда escape-коды для зеленого.
Minoru 04.05.2009 23:20 #
+ 4 -
Плохая практика — делать такие «фичи». И фикс ты предложил плохой. Правильно — это запомнить состояние цветов, сменить на свои, вывести сообщение, вернуть те, что были.

Имхо.
h0rr0rr_drag0n 05.05.2009 06:37 #
+ 0 -
А как запомнить состояние цветов? Я не знаю.
muhas 05.05.2009 14:58 #
+ 0 -
у тя есть дефолтный шрифт, в него и возвращать надо, к примеру в zsh это %{\e<0m%} или %{$reset_color%} в bash вроде первое в виде \e<0m должно сработать
Minoru 05.05.2009 19:12 #
+ 0 -
Ну %{$reset_color%} (и его аналог в bash'е) — тоже не совсем хорошо в данном случае.
Потому что krig у себя в .bashrc прописал что-то там особенное, ты переназначил на своё, а потом сбросил в дефолтное — то есть сбросил и свои настройки, и, что самое важное, krig'а. Так что запомнить и восстановить — единственно верное решение.

Вспомнить бы, как команды назывались…
Minoru 05.05.2009 19:09 #
+ 0 -
Есть там какие-то команды… Честно говоря, не помню названий, но есть набор утилит для контроля за консолью: смена цвета, перемещение курсора в произвольную позицию, получение текущих установок цветов и т.п.
l1feh4ck3r 06.05.2009 09:18 #
+ 0 -
В bash дефолтный цвет имеет код \033<0;m , если я не ошибаюсь. Вечером дома гляну и напишу точнее.
NucleoFag 04.05.2009 22:37 #
+ 0 -
Гыг =) Неожиданно =) Спасибо!

/me пошел править .bashrc

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн