Guide complet de la commande history de Linux
Encyclopédie des commandes Linux
history est une commande intégrée extrêmement utile dans les systèmes Linux. Elle enregistre tout l’historique des commandes que les utilisateurs ont exécutées dans le terminal. Cette fonctionnalité est particulièrement précieuse dans les scénarios suivants :
- Suivi des opérations: Afficher les commandes précédemment exécutées
- Réutilisation rapide: Plus besoin de retaper de longues commandes
- Dépannage: Consulter les enregistrements des opérations du système
- Amélioration de l'efficacité: Accomplir rapidement des tâches répétitives à l'aide des commandes historiques
Lorsque vous saisissez des commandes dans le terminal, Bash les enregistre en mémoire et les écrit dans~/.bash_historyle fichier (avec la configuration par défaut).
Syntaxe et utilisation de base
La syntaxe de base de la commande history est très simple :
history [选项] [参数]
Formes courantes
1. Afficher l'historique complet :
history
2. Afficher les N enregistrements les plus récents :
history 10 # 显示最近10条命令
3. Effacer tout l'historique :
history -c
4. Supprimer un enregistrement d'historique spécifique (par exemple, supprimer l'entrée 1010) :
history -d 1010
Explication détaillée des options et paramètres courants
La commande history prend en charge plusieurs options utiles :
| Option | Description | Exemple |
|---|---|---|
-c |
Effacer tout l'historique | history -c |
-d |
Supprimer l'enregistrement d'historique à la position spécifiée | history -d 1005 |
-a |
Écrire immédiatement l'historique de la mémoire vers le fichier d'historique | history -a |
-n |
Lire les enregistrements d'historique non lus depuis le fichier d'historique | history -n |
-r |
Lire le contenu du fichier d'historique dans la session actuelle | history -r |
-w |
Écrire l'historique actuel dans le fichier d'historique | history -w |
Conseils pratiques et utilisation avancée
1. Exécuter rapidement des commandes de l'historique
Exemple
!! # Exécuter la commande précédente
!string # Exécuter la commande la plus récente commençant par string
Exemple :
Exemple
!! # Réexécuter la commande précédente
!vim # Exécuter la commande la plus récente commençant par vim
2. Rechercher des commandes historiques
UtilisationCtrl+Rvous pouvez effectuer une recherche inversée dans l'historique des commandes ; saisissez un mot-clé partiel pour trouver la commande correspondante.
3. Substitution de commandes historiques
Exemple
Exemple :
Exemple
$ ^file1^file2 # Équivalent à l'exécution de cat file2.txt
4. Afficher les horodatages des commandes
Dans~/.bashrcAjoutez la configuration suivante pour afficher le temps d'exécution des commandes :
Exemple
Exécutez ensuite :
Exemple
Après celahistoryla commande affichera le temps d'exécution de chaque commande.
Configuration des variables d'environnement
Le comportement de la commande history peut être personnalisé via des variables d'environnement :
| Variable | Description | Valeur recommandée |
|---|---|---|
HISTSIZE |
Nombre de commandes d'historique conservées en mémoire | 5000 |
HISTFILESIZE |
Nombre de commandes conservées dans le fichier d'historique | 10000 |
HISTCONTROL |
Contrôle la manière dont l'historique est enregistré | ignoredups:erasedups |
HISTIGNORE |
Spécifie les commandes à ne pas enregistrer | "ls:cd:pwd:exit" |
Exemple de configuration (à ajouter à~/.bashrc):
Exemple
export HISTFILESIZE=10000
export HISTCONTROL=ignoredups:erasedups
export HISTIGNORE="ls:cd:pwd:exit"
export HISTTIMEFORMAT="%F %T "
Scénarios d'application pratiques
Scénario 1 : Récupérer les commandes oubliées
Exemple
Scénario 2 : Compter les commandes les plus fréquemment utilisées
Exemple
Scénario 3 : Sauvegarder les enregistrements d'historique
Exemple
cp ~/.bash_history ~/command_history_backup_$(date +%F).txt
Notes
- Confidentialité et sécurité: Les enregistrements historiques peuvent contenir des informations sensibles (par ex. des mots de passe) ; protégez-les en conséquence
- Problème de terminaux multiples: Par défaut, les différentes sessions de terminal ne partagent pas l'historique en temps réel
- Perte d'historique: Une sortie anormale peut empêcher l'enregistrement des commandes
- Gestion des fichiers volumineux: Des fichiers d'historique trop volumineux peuvent affecter les performances
Résumé et exercices
Passez en revue votre historique de commandes et trouvez les 5 commandes git les plus récemment utilisées
history | grep git | tail -5
Configurez votre environnement bash pour que l'historique comprenne des horodatages et ignore les commandes en double
Créez un alias pour sauvegarder rapidement l'historique actuel dans un répertoire spécifié
alias backup_history='cp ~/.bash_history ~/history_backups/history_$(date +%Y%m%d_%H%M%S).txt'
Essayez d'utiliser
Ctrl+Rpour rechercher une commande complexe que vous avez utilisée auparavant.
En maîtrisant la commande history, vous pouvez améliorer considérablement votre efficacité dans le terminal Linux, réduire les saisies redondantes et mieux gérer l'historique de vos opérations en ligne de commande.
Autres extensions