Чтобы обнаружить привязку readline, которая убивает слово назад, как вы хотите, вы можете использовать следующую команду в своем терминале:
bind -p | awk '/kill/ && /word/ && /backward/'
В установке Ubuntu по умолчанию выход может быть: [!d1 ]
"\e\C-h": backward-kill-word
# shell-backward-kill-word (not bound)
Вторая строка кажется неважной на данный момент, поэтому давайте посмотрим, что означает первая строка. Из того, что я понимаю, функция чтения backward-kill-word, которая фактически удаляет все символы до предыдущего специального символа (/, ;, , и т. Д.), Связана с последовательностью клавиш \e\C-h. Теперь в этой последовательности \e представляет клавишу Esc, \C - клавишу Ctrl, а \C-h обозначает Ctrl + h, что эквивалентно в этом случае с помощью клавиши Backspace.
Итак, вы ищут сочетание клавиш Esc + Ctrl + h, что эквивалентно Esc + Backspace, и из-за поведения xterm, которые заставляют клавишу Alt действовать как метасимвол, а метасимволы преобразуются в двухсимвольную последовательность с предшествующим символом с помощью Esc (см. man xterm) эквивалентно Alt + Backspace.
Теперь, если вам это не нравится, и вы продолжаете его забывать, вы можете использовать следующую команду для создания нового ярлыка , скажем, Esc + w для вашей цели:
bind '"\ew": backward-kill-word'
Чтобы сделать это новое ярлык постоянным все время для всех команд, использующих readline, добавьте следующую строку ваш файл ~/.inputrc:
"\ew": backward-kill-word
Для получения дополнительной информации см. help -m bind | sensible-pager.