2017-03-21 4 views
0

Personnellement, je déteste avoir à descendre pour appuyer sur la flèche vers le haut lorsque je veux répéter une commande sur la ligne de commande.Alias ​​Bash pour appuyer sur la ligne de commande

Existe-t-il un moyen d'affecter un alias bash à une pression sur la touche fléchée vers le haut? Ou quelque chose d'aussi pratique? Je voudrais simplement appuyer sur 'n' puis 'enter' au lieu de 'up-arrow-key' puis 'enter'

Répondre

2

Par défaut, bash utilise les raccourcis clavier emacs. Ctrl-p et ctrl-n (pour le précédent et le suivant) font la même chose que les flèches haut et bas.

Pour afficher et modifier interactivement, bash vous donne la commande bind intégrée. help bind vous montre l'utilisation, et, par exemple, bind -P vous montre toutes les liaisons actuelles. Tout remappage que vous faites peut être placé dans votre fichier .inputrc pour la prochaine fois.

De plus, bash fournit ce qu'il appelle HISTORY EXPANSION, similaire à ce qui était présent dans les anciens shells. Tapez simplement !! et appuyez sur Entrée pour exécuter la commande précédente. Il y a une section entière dans le documentation avec des fonctionnalités supplémentaires.

Enfin, je noterai que si vous répétez des commandes si souvent que frapper up-arrow enter est ennuyeux, vous pourriez envisager d'écrire un script pour faire ce que vous faites.

1

Vous pouvez lancer la commande set -o vi, ou l'ajouter à votre fichier de démarrage. Ensuite, vous pouvez appuyer sur la touche d'échappement et utiliser les touches de déplacement de vi pour faire défiler. Vous pouvez utiliser k pour reculer, j pour faire défiler vers l'avant, et h et `l 'pour vous déplacer vers la gauche et vers la droite.