Par exemple, en bash, je peux taper !xyz
qui exécutera la dernière commande que j'ai tapée en commençant par xyz
.
Comment afficher la dernière commande que j'ai tapée en commençant par xyz
mais sans l'exécuter?
par exemple pour que je puisse changer les paramètres avant l'exécution ....
!
notation, car vous pouvez appuyer plusieurs fois sur Ctrl-r pour parcourir davantage l'historique de correspondance. Lorsque vous arrivez au bon endroit, vous pouvez essayer d'exécuter non pas avec Enter mais avec Ctrl-o pour beaucoup de profit.Essayez
!xyz:p
; il rappellera la commande en haut de l'historique sans l'exécuter, donc par exemple la flèche vers le haut peut y accéder immédiatement pour une édition interactive.En passant, j'ai l'habitude de le faire lors du rappel de commandes avec une expression rationnelle qui pourrait éventuellement creuser quelque chose de dommageable, depuis qu'un hâte
!r
, destiné à rappeler larsync ...
commande la plus récente , a reculé et exécuté unrm *
qui avait été poussé vers la pile plus récemment que le rsync.la source
rm -rf ./*
jamais été aussi reconnaissant pendant une période. Pour info!xyz:p
, cela a fonctionné, merci, mais a nécessité quelques touches supplémentaires que la solution ctrl-r.EMACS
gens, tandis que le! -Path fonctionne mieux pour lesvi
olateurs comme moi.Exécutez la commande suivante. Il fera écho à la dernière commande exécutée. vous pouvez copier et modifier la commande. Cette commande a été testée dans debian.
histoire | queue -2 | grep -v histoire | coupe -d '' -f4-
Ou Appuyez et maintenez ctrl + R et tapez la lettre de départ de votre dernière commande. Il répertorie les commandes que vous avez exécutées précédemment en fonction de votre saisie. Une fois qu'il affiche la commande souhaitée, appuyez simplement sur la flèche droite pour sélectionner cette commande.
la source
Si la recherche d'historique inversée a échoué, effectuez l'une des opérations suivantes:
Ou:
la source