Есть ли в bash ярлык для удаления последнего сегмента пути?

10

Я стал достаточно опытным с несколькими сочетаниями клавиш bash, которые ускоряют мой bash: Ca / Ce, Cu, Cw, Mf / Mb, Cr и т. Д. Одна из распространенных задач, для которой я не нашел хорошего сочетания клавиш, хотя это когда я хочу удалить последний сегмент пути:

Скажи у меня

ls ~/projects/arcaneweb/libraries

и я понимаю, что на самом деле я имел в виду

ls ~/projects/arcaneweb/sources

Есть ли способ просто удалить libraries, сохранив загрузку нажатий клавиш?

davidtbernal
источник
1
Вы спрашиваете о bash, поэтому я публикую это как комментарий, а не как ответ: в zsh вы можете выполнить то, что вы хотите, установив WORDCHARSпеременную env: WORDCHARS=${WORDCHARS//[-\/]}(удаляет - и / из части «слова»). Я нахожу это очень полезным, поэтому думал, что поделюсь.
Джеймс О'Горман
Я обычно просто нажимаю M-Backspaceнесколько раз, пока желаемый эффект не будет достигнут.
jw013

Ответы:

21

Единственный ярлык: M-backspace

Alt + ←      

olibre
источник
1
Вау, это так очевидно! Я думаю, я всегда предполагал, что это будет так же, как Cw по какой-то причине.
davidtbernal
1
В zsh вам может потребоваться добавить bindkey "^[^?" vi-backward-kill-wordв свой .zshrc.
Джулиано
6

Существует опция замены, но не уверен, что она действительно сохранит нажатия клавиш, если путь не будет длинным.

^ Абв ^ хуг

Это заменит первое вхождение abc на xyz.

[root~]# ls -l /var/log/messages
-rw-------  1 root root 850312 Dec 28 14:08 /var/log/messages
[root ~]# ^messages^secure
ls -l /var/log/secure
-rw-------  1 root root 652614 Dec 28 14:08 /var/log/secure

Ссылка на ярлык Bash: http://www.skorks.com/2009/09/bash-shortcuts-for-maximum-productivity/


источник
1
О, это круто. Не подходит для этого конкретного случая использования, но определенно будет полезен в другом месте.
5

Мб, Ck - самый быстрый из всех, что я нашел, он стал немного меньше из-за необходимости использовать ESC в качестве мета. Если у вас есть Alt / Option, связанный как Meta, это будет достаточно быстро, как только вы выработаете для него мышечную память.

Брент Бургуан
источник
Опция привязки к мета - это первое, что я делаю при настройке моего терминала :). Мб, Ck довольно хорошо, я думаю, что могу привыкнуть к этому.
1
есть также Mb, Md, но все они предназначены для сочетаний клавиш в emacs, есть также режим vi
Samus_