
В Bash я часто сталкиваюсь со следующей ситуацией при выполнении обратного поиска (используя сочетание клавиш emacs в Bash):
(reverse-i-search:ccc) aaa bbb |ccc ddd
я нахожусь в середине обратного поиска для «ccc», и курсор правильно остановился на соответствующей строке.
Теперь я хочу начать отсюда и добавить несколько дополнительных символов перед ccc
, например, сделав его eee ccc
.
Однако я не могу нажать Enter, иначе команда будет выполнена напрямую;
я не могу напрямую ввести символы, которые хочу добавить, иначе строка поиска изменится;
я не могу нажать Esc, иначе bash прекратит поиск, но также переместит курсор.
Итак, как мне сказать bash, чтобы он прекратил поиск, но оставил курсор на месте?
решение1
Кажется, есть несколько способов сделать это.сейчас. Некоторые или все из них не работали на момент задания вопроса.
Esc
Shift+Enter
Также клавиши со стрелками (влево, вправо) перемещают курсор из нужной позиции на один символ.
$ bash --version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)