Повтор команд в bash (надо чтоб как в suse)

Kubuntu, Xubuntu и другие

Модератор: Модераторы разделов

bakulenko
Сообщения: 202
ОС: Ubuntu 12.04

Повтор команд в bash

Сообщение bakulenko »

Доброе время суток.

Поставил тут убунту. И сходу столкнулся с неудобством в bash: не могу вызвать недавно вводимую команду. В сусе и фре мне дюже нравились варианты, когда вводишь первые буквы и либо стрелками (фря), либо pgup/pgdown (suse) получаешь быстрый доступ.
В Убунте нашел только ctrl+R. Есть способ вернуть башу привычное по другим дистрибам поведение?
Спасибо сказали:
Аватара пользователя
Rootlexx
Бывший модератор
Сообщения: 4462
Статус: GNU generation
ОС: Debian GNU/Linux

Re: Повтор команд в bash

Сообщение Rootlexx »

Добавьте в ~/.inputrc:

Код: Выделить всё

"\e[5~": history-search-backward
"\e[6~": history-search-forward
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Повтор команд в bash

Сообщение sash-kan »

Rootlexx писал(а):
27.11.2010 02:29
Добавьте в ~/.inputrc:

Код: Выделить всё

"\e[5~": history-search-backward
"\e[6~": history-search-forward
дополню немного:
это будет в большинстве случаев pageup/pagedown.
проверить можно, введя в терминале:
<ctrl+v><pageup> (скорее всего, увидите "^[[5~")
и
<ctrl+v><pagedown> (скорее всего, увидите "^[[6~")

заменив в полученном коде "^[" на "\e", как раз и получите то, что нужно вписать в ~/.inputrc ("\e[5~" и "\e[6~").
для стрелок это, скорее всего, будет так:
<ctrl+v><up> → "^[[A" → "\e[A"
<ctrl+v><down> → "^[[B" → "\e[B"

надеюсь, суть ясна.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
richrd
Сообщения: 227

Re: Повтор команд в bash

Сообщение richrd »

bakulenko писал(а):
26.11.2010 19:06
не могу вызвать недавно вводимую команду.

До кучи:

Повторит последнюю команду.

Код: Выделить всё

history | grep <часть команды>

Выдаст нумерованный список из истории.
!<номер в списке> - повторит соответствующую команду.
Спасибо сказали: