Recherche rapide de commandes

Q : Localisation de commandes utilisées précédemment

Hier, j'ai consulté une page de manuel, mais je n'arrive pas à me rappeler du nom de la commande recherchée et je ne l'ai pas noté. Comment retrouver la page de manuel ?

R : Recherche dans .bash_history.

Il y a de fortes chances pour que la commande utilisée soit stockée dans un fichier appelé .bash_history. Par défaut, ce fichier stocke les 500 dernières commandes entrées à l'invite du shell.

Vous pouvez avoir un aperçu de l'historique de vos commandes en entrant history à l'invite du shell, mais les résultats défilent très rapidement.

Une autre façon d'afficher un fichier .bash_history consiste à utiliser un "pager" tel que less, en entrant less .bash_history à l'invite du shell. Pour avancer d'un écran, appuyez sur la barre d'espacement ; pour revenir à l'écran précédent, appuyez sur la touche B et pour quitter, appuyez sur la touche Q.

Toutefois, la recherche d'une commande écran par écran peut être fastidieuse. Une alternative utile consiste à rechercher des mots clés dans le fichier à l'aide de grep, un utilitaire performant de recherche.

Si vous pouvez rappeler une partie de commande entrée à l'invite du shell, et si cette commande figure toujours dans .bash_history, vous pouvez la trouver rapidement en redirigeant les résultats de la commande history via l'utilitaire grep.

Supposons que vous ayez consulté la page de manuel la veille, mais vous ne pouvez pas vous souvenir de son nom. Pour rechercher la commande, entrez :

history | grep man
		

Instantanément, le système affiche toutes les commandes entrées contenant le mot man (appropriées ou non).

Il existe de nombreuses manières d'utiliser l'historique des commandes. Pour d'autres conseils et astuces, reportez-vous à la la section intitulée Conseils pour l'utilisation de l'historique des commandes.