accueil > Gestion des paquets et du système > history

Guide de la commande history : consulter et gérer l'historique des commandes Shell

La commande `history` affiche une liste des commandes précédemment exécutées par l'utilisateur dans le terminal. Cela est très utile pour retrouver facilement des commandes utilisées dans le passé et les réexécuter, ou pour se souvenir de ce qui a été fait. Avec ce guide, apprenez les bases de l'utilisation de la commande `history` et découvrez les différentes options nécessaires pour gérer l'historique.

Aperçu de history

Chaque fois qu'un utilisateur saisit une commande dans le terminal, cette commande est enregistrée dans un fichier d'historique (généralement `~/.bash_history` ou `~/.zsh_history`). La commande `history` lit le contenu de ce fichier et l'affiche à l'écran, et l'historique est conservé même après la fermeture de la session du shell.

Rôle principal de history

La commande `history` est principalement utilisée pour les objectifs suivants :

Domaines d'application principaux

  • Réexécution de commandes: Vous pouvez réexécuter facilement des longues commandes précédemment utilisées sans avoir à les saisir à nouveau.
  • Suivi des tâches: Aide à vérifier quelles tâches ont été effectuées dans le passé et à comprendre le flux de travail.
  • Amélioration de la productivité: Permet de trouver rapidement des commandes fréquemment utilisées, économisant ainsi du temps de saisie.
  • Référence pour l'écriture de scripts: Utilise des combinaisons de commandes qui ont été exécutées avec succès dans le passé pour l'écriture de scripts.

Variables d'environnement et history

La fonctionnalité d'historique est influencée par certaines variables d'environnement :

Variables d'environnement principales associées

  • `HISTSIZE`: Le nombre maximum de commandes historiques à conserver en mémoire. Cela est conservé pendant la session shell actuelle.
  • `HISTFILESIZE`: Le nombre maximum de commandes historiques à conserver dans le fichier d'historique (`~/.bash_history`, etc.). Cela est conservé entre les sessions shell.
  • `HISTFILE`: Spécifie le chemin du fichier où l'historique des commandes est enregistré. La valeur par défaut est `~/.bash_history`.
  • `HISTCONTROL`: Contrôle la manière dont l'historique est enregistré. (ex : `ignoredups` - ignorer les commandes en double, `ignorespace` - ignorer les commandes qui commencent par un espace)

Options principales de la commande history

La commande `history` fournit diverses options nécessaires pour consulter, modifier et gérer la liste d'historique.

1. Consultation et affichage de l'historique

2. Modification et réexécution de l'historique

Commande générée :

Essayez de combiner les commandes.

Description:

`history` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Apprenez à consulter et à réutiliser efficacement l'historique des commandes à travers divers exemples d'application de la commande `history`.

Consulter les 20 dernières commandes

history 20

Affiche la liste des 20 dernières commandes exécutées avec leur numéro.

Rechercher une chaîne spécifique dans l'historique des commandes

history | grep docker

Utilisez la commande `grep` pour trouver des commandes contenant 'docker' dans l'historique `history`.

Réexécuter la dernière commande `ls`

!ls

Trouvez et réexécutez la dernière commande exécutée qui commence par `ls`.

Réutiliser le dernier argument de la dernière commande

cat /var/log/syslog
less !$

Utile lorsque vous souhaitez rouvrir `/var/log/syslog` avec la commande `less` après avoir exécuté `cat /var/log/syslog`.

Enregistrer immédiatement l'historique actuel dans un fichier

history -w

Enregistre immédiatement toutes les commandes exécutées lors de la session actuelle dans le fichier `~/.bash_history` avant de fermer le shell.

Supprimer un numéro d'historique spécifique

history -d 125

Supprime la commande numéro 125 de l'historique lorsque vous l'avez vérifiée avec la commande `history`. (Attention : une fois supprimée, elle ne peut pas être récupérée)


Commandes de la même catégorie