Astuce pratique en console sous bash : la commande history

Rédigé par Alain Olivetti - -
Voila une petite astuce qui n'a rien d'exceptionnelle mais qui m'est très utile : utiliser l'historique des commandes tapez dans un terminal. En général, l'interface système ou shell sauvegarde les dernières commandes que vous avez tapez dans un terminal. Vous pouvez, par exemple, les parcourir en utilisant les flèches haut/bas. Au delà des des flèches, vous pouvez dans certain shell (c'est le cas en bash, csh, ...) utilisez la commande history qui affiche directement toutes les commandes sauvegardé à la suite. Cela permet de trouver plus rapidement une commande par rapport à l'utilisation des flèches haut/bas mais en plus il est possible de rediriger le résultat et d'utiliser grep pour filtrer les commandes et retrouver plus rapidement celle recherchée. Mais ce que je trouve encore plus pratique c'est le fait de ne pas avoir à retapez une commande. En effet, la commande history affiche la liste des dernières commandes en leur donnant un numéro. En tapant history numeroDeLaCommande vous relancer la commande sans avoir à la taper... et pour les fainéants on peut se limiter à taper un point d'exclamation suivi du numéro de la commande : !numeroDeLaCommande. Faites attention quand même quand vous utilisez cette commande ! Par exemple, si vous avez utilisé rm * pour effacer des fichiers quelque part, cette commande sera disponible dans l'historique et vous pourriez effacer des fichiers sans le vouloir en cas de faute de frappe. En bash, vous pouvez changer le nombre de commandes mémorisé dans l'historique en créant/éditant le fichier : .bash_profile (dans votre répertoire personnel). Pour cela il suffit de modifier/ajouter les lignes suivantes : HISTSIZE=500 HISTFILESIZE=500 Après un redémarrage de la session pour prendre en compte les changements, l'historique conservera les 500 dernières commandes tapées.