Existe um atalho no bash para excluir o último segmento de um caminho?


10

Eu me tornei bastante proficiente com várias teclas de atalho do bash que tornam meu bash mais rápido: Ca / Ce, Cu, Cw, Mf / Mb, Cr etc. Uma tarefa comum para a qual ainda não encontrei um bom atalho é quando eu quero excluir o último segmento de um caminho:

Diga que eu tenho

ls ~/projects/arcaneweb/libraries

e percebo que realmente quis dizer

ls ~/projects/arcaneweb/sources

Existe uma maneira de excluir libraries, salvando uma carga de pressionamentos de tecla?


1
Você está perguntando sobre o bash, então eu estou postando isso como um comentário em vez de uma resposta: No zsh, você pode realizar o que deseja definindo a WORDCHARSvariável env: WORDCHARS=${WORDCHARS//[-\/]}(remove - e / de fazer parte de uma "palavra"). Acho isso muito útil, então pensei em compartilhar.
James O'Gorman

Eu geralmente bato M-Backspacerepetidamente até que o efeito desejado seja alcançado.
jw013

Respostas:


21

Um único atalho: M-backspace

Alt + ←      


1
Uau, isso é tão óbvio! Eu acho que sempre assumi que isso seria o mesmo que Cw por algum motivo.
Davidtbernal

1
No zsh, você pode precisar adicionar bindkey "^[^?" vi-backward-kill-wordao seu .zshrc.
Jul12

6

Existe uma opção de substituição, mas não tenho certeza se isso salvaria as teclas, a menos que o caminho fosse longo.

^ abc ^ xyz

Isso substituirá a primeira ocorrência de abc por 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

Referência do atalho do Bash: http://www.skorks.com/2009/09/bash-shortcuts-for-maximum-productivity/


1
Oh, isso é demais. Não é bom para este caso de uso específico, mas definitivamente será útil em outros lugares.

5

Mb, Ck é o mais rápido que eu encontrei, tornou um pouco menos devido à necessidade de usar ESC como Meta. Se você tiver a opção Alt / Option ligada como Meta, isso seria razoavelmente rápido quando você desenvolver a memória muscular para isso.


A opção de ligação ao meta é a primeira coisa que faço ao configurar meu terminal :). Mb, Ck é muito bom, acho que posso me acostumar com isso.

1
há também Mb, Md mas todos esses são os atalhos de teclado Emacs, há também vi-mode
Samus_
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.