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

A tout moment, nous pouvons visualiser le contenu de l'historique en :



[moi@linuxbox ~]$ histoire | moins

[moi@linuxbox ~]$ histoire | moins


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



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

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


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

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

Le numéro « 88 » est le numéro de ligne de la commande dans la liste d'historique. Nous pourrions l'utiliser immédiatement en utilisant un autre type d'extension appelé extension de l'histoire. Pour utiliser notre ligne découverte, nous pourrions faire ceci :



[moi@linuxbox ~]$ ! 88

[moi@linuxbox ~]$ ! 88


bash développera "!88" dans le contenu de la quatre-vingt-huitième ligne de la liste de l'historique. Il existe d'autres formes d'expansion de l'histoire que nous aborderons un peu plus tard.

bash offre également la possibilité de rechercher la liste d'historique de manière incrémentielle. Cela signifie que nous pouvons dire à bash de rechercher dans la liste d'historique lorsque nous saisissons des caractères, chaque caractère supplémentaire affinant davantage notre recherche. Pour lancer la recherche incrémentielle, appuyez sur Ctrl-r suivi du texte que vous recherchez. Lorsque vous le trouvez, vous pouvez soit appuyer sur Entrée pour exécuter la commande, soit appuyer sur Ctrl-j pour copier la ligne de la liste d'historique vers la ligne de commande actuelle. Pour trouver l'occurrence suivante du texte (déplacer "vers le haut" dans la liste de l'historique), appuyez à nouveau sur Ctrl-r. Pour quitter la recherche, appuyez sur Ctrl-g ou Ctrl-c. On le voit ici en action :


[moi@linuxbox ~]$

[moi@linuxbox ~]$


Première presse Ctrl-r:


(reverse-i-search)`' :

(reverse-i-search)`' :


L'invite change pour indiquer que nous effectuons une recherche incrémentielle inversée. C'est « à l'envers » parce que nous cherchons depuis « maintenant » jusqu'à un certain temps dans le passé. Ensuite, nous commençons à taper notre texte de recherche. Dans cet exemple "/usr/bin":



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

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


Immédiatement, la recherche renvoie notre résultat. Avec notre 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-j. Copions-le. presse Ctrl-j:


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

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


Notre invite shell revient et notre ligne de commande est chargée et prête à l'action ! Le tableau ci-dessous répertorie certaines des frappes utilisées pour manipuler la liste de l'historique :

Tableau 8-5 : Commandes d'historique


Action clé

Action clé

image

image

image

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

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


image

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


image

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


image


image

Alt-n Recherche avant, non incrémentielle.


image

Ctrl-o Exécute l'élément actuel dans la liste d'historique et passe au suivant. C'est pratique si vous essayez de réexécuter une séquence de commandes dans la liste d'historique.


image


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