Afficher et utiliser l’historique des commandes Linux

Depuis le temps que je bosse sous Linux, j’ai honte de ne découvrir ça que maintenant : afficher l’ensemble des commandes précédemment tapées dans un terminal, grâce à history.

Afficher l’historique

La méthode la plus rapide pour utiliser l’historique des commandes est bien entendu d’utiliser les flèches du pavé directionnel ( et ), mais il est possible d’afficher la totalité des commandes lancées précédemment, en tapant simplement :

history

Par défaut, history affiche toutes les commandes enregistrées, de la plus ancienne à la plus récente. L’historique  est enregistré dans le fichier .bash_history

N’afficher que les 10 dernières entrées

history | tail

Vider l’historique

history -c

 

Utilisation de l’historique

Utiliser l’ID d’une entrée

À son exécution, history nous retourne toutes les commandes ainsi que leur numéro d’entrée (première colonne). On peut donc utiliser ce numéro pour relancer des commandes sans avoir à les retaper. Si on veut par exemple ré-exécuter la commande numéro 117, il suffit alors de rentrer :

!117

Rechercher dans l’historique

Le raccourci clavier Ctrl+R permet de rentrer en mode de recherche dans l’historique. Le prompt ressemble alors à ça :

(reverse-i-search)`':

Reste alors de rentrer les premiers caractères de la commande à rechercher pour que le prompt vous propose les commandes les plus récentes correspondant à vos frappes, puis Enter quand vous avez retrouvé la bonne commande.

Il est même possible de faire cette recherche « à la volée », c’est à dire sans passer par le mode de recherche. Exemple si on veut exécuter la dernière commande commençant par « qstat » :

!qstat