Odpowiedzi:
Najczęściej używane polecenia w domyślnym trybie emulacji bash , dla najczęściej używanych klawiatur:
Jest też unix-filename-rubout
dla Readline
!
# in ~/.inputrc
# press ctrl-b to delete unix filename parts
# see: man bash | less -p 'unix-filename-rubout' and
# http://www.calmar.ws/vim/vi-bash.html
set editing-mode vi
set keymap vi
"\C-b": unix-filename-rubout
unix-filename-rubout
jest poprawną odpowiedzią na zadane pytanie, ponieważ usuwa ukośnik lub spację, a Alt-BkSpc
zatrzymuje się na znakach takich jak łącznik, podkreślnik, kropka itp.
Domyślnie bash (i zgaduję, że zsh) będzie w trybie emacsa. Możesz spróbować czegoś takiego:
Esc + bcofnie kursor o jedno słowo. Ctrl + kusunie się do końca linii.
Większość nowoczesnych powłok (takich jak bash) będzie implementować zaawansowane funkcje edycji wiersza poleceń. Te polecenia są albo bliskie edycji emacsa (Ctrl + A dla początku linii, Ctrl + E dla końca linii, ...).
Jeśli znasz edytory podobne do vi, możesz spróbować włączyć tryb vi.
set -o vi
Daje to powłoki podobne do vi (tryb poleceń / tryb wstawiania), a ty masz dostęp do standardowych poleceń (d dla usuwania, r dla zamiany, ...)
W trybie Vi możesz zrobić to, co opisałeś:
Esc (command mode); d; b.
db
w tym scenariuszu w bash. Znalazłem też vi-backward-kill-word
w zsh to, czego chcę, i jest to wygodniejsze niż ustawienie trybu vi w bash. Ale nadal chcę znaleźć skrót trybu emacsa do tego celu w bash.
db
w niektórych przypadkach występuje.
bindkey [key] vi-backward-kill-word