Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

Recherche dans l'historique

À tout moment, nous pouvons consulter le contenu de la liste d'historique en :



[moi@linuxbox ~]$ histoire | moins

[moi@linuxbox ~]$ histoire | moins


Par défaut, bash stocke les 500 dernières commandes saisies, bien que la plupart des distributions modernes définissent cette valeur à 1000 XNUMX. Nous verrons comment ajuster cette valeur dans un chapitre ultérieur. Supposons que nous souhaitions retrouver les commandes que nous avons utilisées pour lister / usr / binUne façon de procéder :



[moi@linuxbox ~]$ historique | grep /usr/bin

[moi@linuxbox ~]$ historique | grep /usr/bin


Et disons que parmi nos résultats nous obtenons une ligne contenant une commande intéressante comme celle-ci :

88 ls -l /usr/bin > ls-output.txt

Le numéro « 88 » correspond au numéro de ligne de la commande dans l'historique. Nous pourrions l'utiliser immédiatement grâce à un autre type d'extension appelé extension de l'histoirePour utiliser notre ligne découverte, nous pourrions faire ceci :



[moi@linuxbox ~]$ ! 88

[moi@linuxbox ~]$ ! 88


bash étend « !88 » au contenu de la quatre-vingt-huitième ligne de l'historique. Il existe d'autres formes d'extension de l'historique que nous aborderons plus tard.

Bash permet également d'effectuer une recherche incrémentale dans l'historique. Cela signifie que nous pouvons indiquer à Bash de rechercher l'historique au fur et à mesure de la saisie, chaque caractère supplémentaire affinant la recherche. Pour lancer la recherche incrémentale, appuyez sur Ctrl-r suivi du texte recherché. Une fois trouvé, vous pouvez appuyer sur Entrée pour exécuter la commande ou sur Ctrl-j pour copier la ligne de l'historique vers la ligne de commande actuelle. Pour trouver l'occurrence suivante du texte (remonter dans l'historique), appuyez à nouveau sur Ctrl-r. Pour quitter la recherche, appuyez sur Ctrl-g ou Ctrl-c. Voici comment procéder :


[moi@linuxbox ~]$

[moi@linuxbox ~]$


Première presse Ctrl-r:


(recherche-inversée)`':

(recherche-inversée)`':


L'invite change pour indiquer que nous effectuons une recherche incrémentale inversée. Il s'agit d'une recherche « inverse » car la recherche s'effectue de « maintenant » à un moment donné dans le passé. Ensuite, nous commençons à saisir notre texte de recherche. Dans cet exemple, « /usr/bin » :



(recherche-i-inversée)`/ usr / bin': ls -l /usr/bin > ls-output.txt

(recherche-i-inversée)`/ usr / bin': ls -l /usr/bin > ls-output.txt


La recherche renvoie immédiatement notre résultat. Grâce à ce résultat, nous pouvons exécuter la commande en appuyant sur Entrer, ou nous pouvons copier la commande sur notre ligne de commande actuelle pour une édition ultérieure en appuyant sur Ctrl-jCopions-le. Appuyez sur Ctrl-j:


[moi@linuxbox ~]$ ls -l /usr/bin > ls-output.txt

[moi@linuxbox ~]$ ls -l /usr/bin > ls-output.txt


L'invite de commande s'affiche et notre ligne de commande est chargée et prête à l'emploi ! Le tableau ci-dessous répertorie quelques raccourcis clavier permettant de manipuler l'historique :

Tableau 8-5 : Commandes d'historique


Action clé

Action clé

image

image

image

Ctrl-p Accéder à l'entrée précédente de l'historique. Même action que la flèche vers le haut. Ctrl-n Accéder à l'entrée suivante de l'historique. Même action que la flèche vers le bas. Alt-< Accéder au début (en haut) de la liste de l'historique.

Alt-> Déplacer vers la fin (en bas) de la liste de l'historique, c'est-à-dire la ligne de commande actuelle.


image

Ctrl-r Recherche incrémentielle inversée. Recherche incrémentielle à partir de la ligne de commande actuelle vers l'historique.


image

Alt-p : recherche inversée, non incrémentielle. Avec cette touche, saisissez la chaîne de recherche et appuyez sur Entrée avant que la recherche ne soit effectuée.


image


image

Alt-n Recherche vers l'avant, non incrémentielle.


image

Ctrl-o : exécute l'élément actuel de l'historique et passe au suivant. Cette fonction est pratique pour réexécuter une séquence de commandes de l'historique.


image


Meilleur système d'exploitation Cloud Computing chez OnWorks :