GNU/Linux >> Tutoriels Linux >  >> Linux

5 astuces simples pour l'historique de Bash que tout utilisateur de Linux devrait connaître

Que vous soyez un débutant ou un expert de bash, vous ne pouvez pas continuer à travailler en ligne de commande sans utiliser la fonction d'historique de bash super utile.

Vous savez probablement déjà que si vous utilisez les touches fléchées vers le haut ou vers le bas dans le terminal Linux, vous pouvez parcourir les commandes que vous avez exécutées précédemment.

Ceci est disponible grâce à la commande bash history.

1. Afficher l'historique de votre bash

La façon la plus simple de voir les commandes que vous avez saisies précédemment est d'utiliser l'historique des commandes.

history

Il affichera une centaine ou peut-être un millier de commandes stockées dans votre historique. La taille dépend de la variable HISTSIZE.

Si vous ne voulez pas que votre écran soit encombré, vous pouvez limiter le nombre de lignes qu'il affiche. Par exemple, pour afficher uniquement les 7 dernières commandes de l'historique, utilisez-le comme ceci :

history 7

2. Exécuter la commande à partir de l'historique bash

Lorsque vous regardez l'historique, vous pouvez exécuter une commande en utilisant son numéro avec ! , comme ceci :

!#

Vous pouvez relancer la dernière commande avec !! . Une bonne utilisation de ceci vient lorsque vous oubliez d'utiliser une commande et que vous l'utilisez rapidement comme ceci pour exécuter avec sudo :

sudo !!

Vous pouvez également exécuter la dernière commande en commençant par un certain texte comme ceci :

!text

Supposons que vous ayez exécuté echo $HISTCONTROL plus tôt et que vous souhaitiez l'exécuter à nouveau. Vous pouvez l'utiliser comme ceci :

!echo

Et la commande ci-dessus exécutera la dernière commande echo exécutée à partir de votre historique.

Il existe une meilleure option pour rechercher dans l'historique, et je vous la montrerai dans la section suivante.

Astuce bonus :si vous n'êtes pas sûr de la commande, au lieu de l'exécuter, imprimez-la en ajoutant :p jusqu'au bout. Donc vous l'utilisez comme !echo:p , !23:p etc.

3. Recherche dans l'historique bash

Vous pensez peut-être qu'il est plus facile d'utiliser la commande grep pour rechercher quelque chose dans l'historique comme ceci :

history | grep text

Une meilleure et très pratique façon de rechercher dans l'historique est d'utiliser le ctrl+r touches pour démarrer la recherche inversée et tapez la chaîne que vous recherchez.

Vous pouvez faire défiler les choix en appuyant sur ctrl+r à plusieurs reprises et lorsque vous trouvez la commande que vous cherchiez, appuyez sur ctrl+o ou simplement enter touche pour sélectionner et exécuter cette commande.

Par exemple, l'exemple ci-dessous recherche une commande contenant "aud".

Si vous ne trouvez pas la commande, modifiez votre chaîne de recherche ou appuyez sur ctrl+g pour sortir de la recherche inversée.

4. Réutiliser les arguments des commandes précédentes dans votre historique

Voici une autre chose intéressante que vous pouvez faire avec l'historique bash. Vous pouvez utiliser les arguments des commandes précédentes dans une nouvelle commande.

Vous pouvez utiliser le dernier argument de la commande précédente comme ceci :

new_command !$

Par exemple, supposons que vous lisiez un fichier avec la commande less et que vous décidiez de modifier ce fichier. Au lieu de le taper entièrement, vous utilisez le !$ raccourci.

L'option ci-dessus ne vous donne que le dernier argument de la commande précédente. Si vous voulez tous les arguments, utilisez ceci :

new_command !*

5. Nettoyer votre historique des entrées redondantes

Il existe une variable d'environnement appelée HISTCONTROL qui vous aide avec les entrées redondantes dans l'historique bash. Vous pouvez lui attribuer l'une des trois valeurs :

  • ignorezespace :avec cette variable définie, vous pouvez exécuter une commande en mettant un espace devant. La commande s'exécute comme d'habitude mais ne sera pas incluse dans l'historique.
  • ignoredups :s'il y a deux commandes identiques, elles sont exécutées consécutivement , un seul d'entre eux sera enregistré dans l'historique.
  • ignoreboth :définit les deux fonctionnalités mentionnées ci-dessus.

Vous devez définir la variable dans votre fichier bashrc afin qu'elle soit définie à chaque fois que vous utilisez le shell bash.

Trop de commandes dans votre historique bash ? Vous pouvez effacer avec l'option -c . Cela effacera l'historique actuel de bash et recommencera à ajouter des commandes à partir de maintenant.

history -c

Il y a bien plus à faire dans l'histoire que ces cinq conseils dont j'ai parlé ici. Vous pouvez toujours vous référer à la page de manuel de la commande history pour plus d'informations. Vous voudrez peut-être également en savoir plus sur les fonctions d'historique, si cela vous intéresse.

J'espère que vous trouverez cet article utile. Si vous avez une fonction d'historique de bash préférée, partagez-la dans les commentaires.


Linux
  1. 20 commandes Linux essentielles pour chaque utilisateur

  2. Thèmes sonores sous Linux :ce que chaque utilisateur doit savoir

  3. Comment effacer l'historique de la ligne de commande BASH sous Linux

  4. Comment effacer l'historique de Bash sous Linux

  5. Raccourcis de terminal Linux utiles que chaque utilisateur Linux expérimenté doit connaître

Commande d'historique sous Linux (historique de bash)

Commande ID sous Linux

Bonnes alternatives aux pages de manuel que chaque utilisateur Linux doit connaître

Comment activer l'horodatage dans l'historique de Bash sous Linux

5 commandes Linux que chaque utilisateur Linux devrait connaître

Astuces pour les terminaux Linux que tous les passionnés de Linux doivent connaître !