В руководстве по readline
# man readline
Ниже описано, как искать назад и вперед.
reverse-search-history (C-r)
Search backward starting at the current line and moving `up' through the history as necessary. This is an incremental search.
forward-search-history (C-s)
Search forward starting at the current line and moving `down' through the history as necessary. This is an incremental search.
Когда я нажимаю ctrl + r и нажимаю «apt-get», я могу сделать историю обратного поиска, постоянно нажимая ctrl + r. Но затем я нажимаю ctrl + s, и терминал не переходит вперед. Я делаю что-то неправильное?
Также, какой мета-префикс «M-» представляет?
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
Последовательность C-s взята из драйвера терминала, как вы можете видеть из
stty -a | grep '\^S'
. Чтобы освободить последовательность для использования с помощью readline, установите последовательность останова в какую-либо другую последовательность, например
stty stop ^J
или вообще удалить его с помощью
stty stop undef
После этого C-s будет работать в данном терминале.
Установите его в ~/.bashrc, чтобы он работал в каждом терминале.
Последовательность M- означает клавишу Alt, как уже отмечалось.
forward-search-history (C-s) не работает (хотя он находится на странице руководства).
'M-' представляет модификатор клавиши Alt.
В дополнение к назначению другого символа остановки TTY, как было предложено выше, вы можете полностью удалить его, если вы не планируете его использовать (я не хочу этого делать):
$ stty stop undef
Затем readline может использовать элементы управления для прямого поиска, и вы не получите какого-либо странного поведения из-за добавления нового символа остановки.
Пожалуйста, не используйте:
stty stop ^J
, но
stty stop ^P
или что-нибудь еще, поскольку ^J создает большие проблемы с ssh. (Я не знаю, почему так или иначе.) После того, как я вошел в Enter и обратная косая черта не работала. или мне пришлось набирать:
stty sane
export TERM=linux
, прежде чем я захотел ввести
ssh root@192...
, поэтому
stty stop ^P
решил обе проблемы одновременно.
Вы можете отключить управление потоком XON / XOFF:
stty -ixon
в вашем ~ / .profile или аналогичном, тогда будет распознан Ctrl + S.
Пример [!d3 ]
Для переключения вперед при использовании обратного поиска (с помощью команды Ctrl-R):
Откройте файл .bashrc: sudo gedit ~/.bashrc добавьте эту строку (буква «f» может быть заменена другой, еще не используемый системой)bind '"\C-f": forward-search-history'
Закройте файл и обновите свой .bashrc (или откройте другой терминал) командой: source ~/.bashrc или . ~/.bashrc ТЕПЕРЬ ВЫ МОЖЕТЕ ПЕРЕДАТЬ ВПЕРЕД В ИСТОРИИ С SHORTCUT: Ctrl + f
Работа над Ubuntu 18.04 LTS
forward-search-history (C-s) не работает (хотя он находится на странице руководства).
'M-' представляет модификатор клавиши Alt.
В дополнение к назначению другого символа остановки TTY, как было предложено выше, вы можете полностью удалить его, если вы не планируете его использовать (я не хочу этого делать):
$ stty stop undef
Затем readline может использовать элементы управления для прямого поиска, и вы не получите какого-либо странного поведения из-за добавления нового символа остановки.
Пожалуйста, не используйте:
stty stop ^J
, но
stty stop ^P
или что-нибудь еще, поскольку ^J создает большие проблемы с ssh. (Я не знаю, почему так или иначе.) После того, как я вошел в Enter и обратная косая черта не работала. или мне пришлось набирать:
stty sane
export TERM=linux
, прежде чем я захотел ввести
ssh root@192...
, поэтому
stty stop ^P
решил обе проблемы одновременно.
Вы можете отключить управление потоком XON / XOFF:
stty -ixon
в вашем ~ / .profile или аналогичном, тогда будет распознан Ctrl + S.
Пример
Для переключения вперед при использовании обратного поиска (с помощью команды Ctrl-R):
Откройте файл .bashrc: sudo gedit ~/.bashrc добавьте эту строку (буква «f» может быть заменена другой, еще не используемый системой)bind '"\C-f": forward-search-history'
Закройте файл и обновите свой .bashrc (или откройте другой терминал) командой: source ~/.bashrc или . ~/.bashrc ТЕПЕРЬ ВЫ МОЖЕТЕ ПЕРЕДАТЬ ВПЕРЕД В ИСТОРИИ С SHORTCUT: Ctrl + f
Работа над Ubuntu 18.04 LTS
forward-search-history (C-s) не работает (хотя он находится на странице руководства).
'M-' представляет модификатор клавиши Alt.
В дополнение к назначению другого символа остановки TTY, как было предложено выше, вы можете полностью удалить его, если вы не планируете его использовать (я не хочу этого делать):
$ stty stop undef
Затем readline может использовать элементы управления для прямого поиска, и вы не получите какого-либо странного поведения из-за добавления нового символа остановки.
Пожалуйста, не используйте:
stty stop ^J
, но
stty stop ^P
или что-нибудь еще, поскольку ^J создает большие проблемы с ssh. (Я не знаю, почему так или иначе.) После того, как я вошел в Enter и обратная косая черта не работала. или мне пришлось набирать:
stty sane
export TERM=linux
, прежде чем я захотел ввести
ssh root@192...
, поэтому
stty stop ^P
решил обе проблемы одновременно.
Вы можете отключить управление потоком XON / XOFF:
stty -ixon
в вашем ~ / .profile или аналогичном, тогда будет распознан Ctrl + S.
Пример
Для переключения вперед при использовании обратного поиска (с помощью команды Ctrl-R):
Откройте файл .bashrc: sudo gedit ~/.bashrc добавьте эту строку (буква «f» может быть заменена другой, еще не используемый системой)bind '"\C-f": forward-search-history'
Закройте файл и обновите свой .bashrc (или откройте другой терминал) командой: source ~/.bashrc или . ~/.bashrc ТЕПЕРЬ ВЫ МОЖЕТЕ ПЕРЕДАТЬ ВПЕРЕД В ИСТОРИИ С SHORTCUT: Ctrl + f
Работа над Ubuntu 18.04 LTS
forward-search-history (C-s) не работает (хотя он находится на странице руководства).
'M-' представляет модификатор клавиши Alt.
В дополнение к назначению другого символа остановки TTY, как было предложено выше, вы можете полностью удалить его, если вы не планируете его использовать (я не хочу этого делать):
$ stty stop undef
Затем readline может использовать элементы управления для прямого поиска, и вы не получите какого-либо странного поведения из-за добавления нового символа остановки.
Пожалуйста, не используйте:
stty stop ^J
, но
stty stop ^P
или что-нибудь еще, поскольку ^J создает большие проблемы с ssh. (Я не знаю, почему так или иначе.) После того, как я вошел в Enter и обратная косая черта не работала. или мне пришлось набирать:
stty sane
export TERM=linux
, прежде чем я захотел ввести
ssh root@192...
, поэтому
stty stop ^P
решил обе проблемы одновременно.
Вы можете отключить управление потоком XON / XOFF:
stty -ixon
в вашем ~ / .profile или аналогичном, тогда будет распознан Ctrl + S.
Пример
Для переключения вперед при использовании обратного поиска (с помощью команды Ctrl-R):
Откройте файл .bashrc: sudo gedit ~/.bashrc добавьте эту строку (буква «f» может быть заменена другой, еще не используемый системой)bind '"\C-f": forward-search-history'
Закройте файл и обновите свой .bashrc (или откройте другой терминал) командой: source ~/.bashrc или . ~/.bashrc ТЕПЕРЬ ВЫ МОЖЕТЕ ПЕРЕДАТЬ ВПЕРЕД В ИСТОРИИ С SHORTCUT: Ctrl + f
Работа над Ubuntu 18.04 LTS
forward-search-history (C-s) не работает (хотя он находится на странице руководства).
'M-' представляет модификатор клавиши Alt.
В дополнение к назначению другого символа остановки TTY, как было предложено выше, вы можете полностью удалить его, если вы не планируете его использовать (я не хочу этого делать):
$ stty stop undef
Затем readline может использовать элементы управления для прямого поиска, и вы не получите какого-либо странного поведения из-за добавления нового символа остановки.