Vous souvenez-vous de cette commande qui a résolu votre problème ? Était-ce chat, moins, plus, wc ou autre chose? Lorsque nous sommes au terminal, nous pouvons émettre des dizaines de commandes pour résoudre un problème et en arrière-plan, notre système d’exploitation Linux enregistre ces commandes dans un fichier d’historique.
Dans ce guide, nous examinerons différentes manières de rechercher et de réutiliser notre historique de commandes. Pendant que vous vous habituez à ces commandes, il est important de vérifier que vous ne relancez pas involontairement une commande qui pourrait causer des problèmes. Prenez votre temps pour utiliser ces nouvelles techniques et vérifiez les détails avant d’appuyer sur Entrée !
Toutes les commandes de ce tutoriel fonctionneront sur la plupart des machines Linux. Nous avons utilisé une installation d’Ubuntu 20.04, mais vous pouvez exécuter ce guide sur un Tarte aux framboises. Toutes les procédures sont effectuées via le terminal. Vous pouvez ouvrir une fenêtre de terminal sur la plupart des machines Linux en appuyant sur ctrl, alt et t.
Le moyen le plus simple de parcourir vos commandes récentes est d’utiliser le en haut et vers le bas touches fléchées de votre clavier pour faire défiler les commandes précédentes. Si vous souhaitez relancer une commande trouvée, appuyez simplement sur la touche Entrer clé.
Affichage de l’historique de vos commandes sous Linux
Le l’histoire La commande, dans son cas d’utilisation le plus élémentaire, répertorie et annote les 1000 dernières commandes émises dans l’émulateur de terminal. Chaque commande est associée à un numéro.
1. Exécutez le l’histoire commande pour voir une liste des 1000 dernières commandes. Vous verrez que toutes les commandes historiques répertoriées reçoivent un numéro de référence unique.
history
2. Relancez la commande history mais limitez le nombre de résultats à un nombre spécifique. Ceci est utile si vous savez à peu près quand une commande que vous recherchez a été émise. Vous ne devriez voir que les 20 derniers résultats répertoriés.
history 20
Relancer une commande précédente
Maintenant, nous pouvons utiliser l’histoire pour afficher nos commandes précédentes, nous pouvons choisir et réémettre une commande en utilisant le numéro attribué au l’histoire résultats.
1. Cours histoire 20 pour créer une liste de commandes, choisissez une commande à réémettre en vous assurant que la commande choisie peut être exécutée en toute sécurité. Choisir une commande simple comme CD Musique (1660) est un bon exemple sûr. Notez qu’il n’y a pas d’espace entre le point d’exclamation et le numéro de commande.
history 20
!1660
Recherche améliorée dans l’historique Linux à l’aide de Grep
En canalisant le sortie de l’histoire dans grep nous pouvons effectuer une recherche dans notre historique de commandes en renvoyant des résultats pour un terme ou une chaîne spécifié. C’est une excellente approche pour trouver une commande partiellement mémorisée.
1. Rechercher un terme spécifique à l’aide de l’histoire et grep. Nous avons utilisé l’exemple de terme de recherche « silhouette » car nous nous sommes souvenus que nous avions émis certaines commandes pour corriger un problème avec un coupe-vinyle silhouette. Remplacez ce terme de recherche par quelque chose qui convient à votre machine.
history | grep silhouette
Utilisation d’une recherche inversée dans l’historique des commandes Linux
Une autre approche pratique pour récupérer les commandes Linux précédentes consiste à utiliser la fonction de recherche inversée intégrée au terminal. Pour entrer dans ce mode, appuyez simplement sur ctrl et r. Vous pouvez ensuite entrer un terme de recherche et utiliser des pressions répétées sur ctrl et r pour revenir en arrière dans la liste des commandes précédentes contenant ce terme. Lorsque vous trouvez une commande que vous souhaitez réémettre, appuyez sur Entrée.
1. Presse ctrl et r passe en mode de recherche inverséevous devriez voir l’invite lire maintenant (recherche inversée)`’ :
2. Tapez un terme de recherche et vous devriez voir la dernière commande émise contenant ce terme. Par exemple, nous avons ajouté le terme de recherche sudo pour afficher les commandes précédentes émises avec les privilèges sudo.
3. Répétez en appuyant sur ctrl et r pour parcourir d’autres résultats.
4. Exécutez une commande précédente en appuyant sur entrée ou quittez la recherche inverse en appuyant sur Esc .
Réémission rapide de la commande Linux précédente
Souvent, nous voudrons simplement réexécuter la dernière commande que nous avons émise. Nous pouvons y parvenir simplement en utilisant le !! commande.
1. Exécutez le ls commande pour définir ceci comme exemple à tester.
ls
2. Relancez la dernière commande en utilisant !!. Notez que la commande précédente est répertoriée et exécutée.
!!
Parfois, nous pouvons essayer de réutiliser une commande qui nécessite des privilèges élevés, par exemple en éditant un fichier en dehors de notre répertoire personnel. Pour ce faire, nous pouvons faire précéder la commande précédente de sudo. Dans l’exemple suivant, nous ajoutons le premier ls commande à relancer avec sudo.
sudo !!
Masquer vos commandes de l’historique Linux
Il peut arriver un moment où vous devez garder une commande hors de votre historique, et si ce scénario se produit, tout ce que vous avez à faire est de faire précéder la commande d’une simple pression sur la barre d’espace.
Par exemple, voici deux commandes ls, la seconde a un seul espace, la cachant du fichier historique.
ls
ls
Avec un peu de pratique, toutes les approches ci-dessus deviennent assez instinctives à utiliser et peuvent rendre votre session de terminal plus puissante et efficace. La possibilité de localiser et de réémettre des commandes est extrêmement utile, en particulier lors de la récupération d’une commande rarement utilisée ou d’une commande difficile à créer au départ.