Existe-t-il un raccourci dans bash pour supprimer le dernier segment d'un chemin?


10

Je suis devenu assez compétent avec un certain nombre de touches de raccourci bash qui rendent ma frappe plus rapide: Ca / Ce, Cu, Cw, Mf / Mb, Cr etc. Une tâche courante pour laquelle je n'ai pas trouvé de bon raccourci c'est quand je veux supprimer le dernier segment d'un chemin:

Dis que j'ai

ls ~/projects/arcaneweb/libraries

et je me rends compte que je voulais dire

ls ~/projects/arcaneweb/sources

Existe-t-il un moyen de supprimer simplement libraries, en sauvegardant une charge de frappes?


1
Vous posez des questions sur bash, donc je poste ceci comme un commentaire au lieu d'une réponse: Dans zsh, vous pouvez accomplir ce que vous voulez en définissant la WORDCHARSvariable env: WORDCHARS=${WORDCHARS//[-\/]}(supprime - et / de faire partie d'un "mot"). Je trouve cela très utile alors j'ai pensé partager.
James O'Gorman

Je frappe généralement à M-Backspaceplusieurs reprises jusqu'à ce que l'effet souhaité soit atteint.
jw013

Réponses:


21

Un seul raccourci: M-backspace

Alt + ←      


1
Wow, c'est tellement évident! Je suppose que j'ai toujours supposé que ce serait la même chose que Cw pour une raison quelconque.
davidtbernal

1
Dans zsh, vous devrez peut-être ajouter bindkey "^[^?" vi-backward-kill-wordà votre .zshrc.
Juliano

6

Il existe une option de remplacement, mais vous n'êtes pas sûr qu'elle sauverait vraiment les frappes à moins que le chemin soit long.

^ abc ^ xyz

Cela remplacera la première occurrence de abc par 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

Référence du raccourci Bash: http://www.skorks.com/2009/09/bash-shortcuts-for-maximum-productivity/


1
Oh c'est super. Pas génial pour ce cas d'utilisation particulier, mais sera certainement utile ailleurs.

5

Mb, Ck est le plus rapide que j'ai trouvé, rendu un peu moins en raison de la nécessité d'utiliser ESC comme Meta. Si vous avez Alt / Option lié en tant que méta, cela serait raisonnablement rapide une fois que vous développez la mémoire musculaire pour cela.


L'option de liaison à la méta est la première chose que je fais lors de la configuration de mon terminal :). Mb, Ck est plutôt bon, je pense que je peux m'y habituer.

1
il y a aussi Mb, Md mais tous ceux-ci sont pour les raccourcis clavier emacs, il y a aussi vi-mode
Samus_
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.