Récupérer facilement les commandes de l'historique des commandes Linux
Dans notre travail quotidien avec Linux, nous exécutons régulièrement à la fois des commandes simples et complexes. Alors que les commandes courtes et simples sont faciles à mémoriser, se souvenir des longues commandes complexes avec plusieurs options peut être un défi. Dans ce bref guide, je vais présenter quelques méthodes faciles pour récupérer sans effort les commandes depuis l'historique sous Linux.
Récupérer les commandes de l'historique sous Linux
Récupérer de longues commandes à partir du fichier d'historique sous Linux peut être facilité avec quelques astuces. Pas seulement les longues commandes, vous pouvez retrouver toutes les commandes exécutées comme décrit dans les sections suivantes.
1. Utilisez la commande history :
Il suffit de taper history pour lister les commandes récentes. Vous pouvez ensuite faire défiler cette liste pour trouver la commande que vous recherchez.
Exemple :
$ history2. Historique de recherche avec Ctrl+R:
Appuyez sur Ctrl+R et commencez à taper une partie de la commande. Cela lance une recherche inversée dans votre historique. Continuez à appuyer sur Ctrl+R pour parcourir les correspondances.
Exemple :
Appuyez sur Ctrl+R et tapez ssh pour trouver la dernière commande ssh utilisée.
3. Historique avec numéros de ligne:
Utilisez history | nl pour afficher votre historique avec des numéros de ligne. Vous pouvez ensuite exécuter une commande directement depuis l'historique en utilisant !number, où number est le numéro de ligne de l'historique.
Exemple :
Tapez !25 pour exécuter la commande listée comme ligne numéro 25 dans l'historique.
$ !25
cat /etc/fedora-release
Fedora release 39 (Thirty Nine)4. Utilisez grep avec l'historique:
Vous pouvez rechercher dans votre historique en utilisant history | grep 'search-term'. Cela est utile pour trouver des commandes contenant un mot ou une expression spécifique.
Exemple :
$ history | grep 'ssh'Cela trouve toutes les commandes dans votre historique qui incluent 'ssh'.
6 sudo systemctl status sshd
7 sudo systemctl start sshd
8 sudo systemctl enable sshd
9 sudo systemctl status sshd
131 history | grep 'ssh'Comme vous le voyez dans la sortie ci-dessus, toutes les commandes qui incluent ssh sont affichées avec leur numéro de séquence. Ce numéro de séquence peut être utilisé à la place de l'identifiant de la commande pour l'exécution en utilisant le symbole ! bang.
Par exemple, exécuter !6 exécuterait la commande sudo systemctl status sshd.
Lecture suggérée : Le tutoriel de la commande Grep avec des exemples pour les débutants
5. Alias pour les commandes longues:
Si vous utilisez régulièrement une longue commande, envisagez de créer un alias pour celle-ci dans votre .bashrc ou .bash_profile. De cette façon, vous pouvez exécuter la commande en utilisant un nom court et facile à retenir.
Exemple :
Ajoutez alias ll='ls -alF' à votre fichier .bashrc. Taper ll exécute maintenant la commande ls -alF.
Lecture suggérée : Les commandes alias et unalias expliquées avec des exemples
6. Scripts pour les commandes complexes :
Pour des commandes très complexes, en particulier celles avec de nombreux arguments et options, envisagez de sauvegarder les commandes Linux sous forme de scripts. De cette façon, vous pouvez les exécuter avec une commande simple.
Exemple :
Écrivez un script appelé backup.sh avec votre commande de sauvegarde complexe. Exécutez le script en utilisant ./backup.sh au lieu de taper toute la commande.
Il y a quelque temps, nous avons créé un script Rsync simple pour sauvegarder des fichiers depuis un système distant. Allez au lien suivant pour apprendre comment créer un script rsync et comment sauvegarder des fichiers.
- Comment sauvegarder des fichiers depuis un VPS Linux distant en utilisant un script Rsync
7. Commandes de signets:
Vous pouvez 'mettre en signet' une commande longue en y ajoutant un commentaire unique. Par exemple, your-long-command #uniqueTag. Plus tard, vous pouvez facilement la retrouver en recherchant le tag unique.
Exemple :
Visitez le lien suivant pour savoir comment appliquer des balises aux commandes et comment utiliser les balises pour récupérer la commande associée à cette balise.
- Appliquer des tags aux commandes Linux pour les retrouver facilement dans l'historique
8. Utilisez la commande fc :
La commande fc ouvre la dernière commande dans votre éditeur de texte par défaut. Vous pouvez également spécifier une plage comme fc 10 20 pour ouvrir les commandes 10 à 20 dans l'éditeur.
Exemple :
$ fc -lLa sortie affichera une liste de commandes avec leurs identifiants. Vous pouvez ensuite identifier l'identifiant de la commande que vous souhaitez exécuter.
Une fois que vous avez identifié l'ID de la commande, vous pouvez utiliser le symbole ! suivi de l'ID pour exécuter la commande. Par exemple, si l'ID de la commande sudo dnf install vim est 10, vous utiliseriez :
$ !10Pour en savoir plus sur la commande fc, visitez le lien suivant.
- Le tutoriel de la commande fc avec des exemples pour les débutants
9. Expansion historique:
Utilisez les fonctionnalités d'expansion de l'historique telles que !! pour se référer à la dernière commande, !-n pour la nième dernière commande, et !string pour exécuter la dernière commande commençant par 'string'.
Nous avons compilé quelques méthodes pour répéter des commandes précédemment exécutées à partir de l'historique. Consultez le guide suivant pour plus de détails.
- Comment répéter votre dernière commande dans Linux
10. Contrôle Étendu de l'Historique:
Vous pouvez configurer votre .bashrc ou .bash_profile pour augmenter la taille de votre fichier d'historique et contrôler ce qui est enregistré. Par exemple, les variables HISTSIZE et HISTFILESIZE définissent la taille de l'historique.
11. Utiliser des outils externes :
De nombreuses personnes ont développé une large gamme d'applications et d'outils pour sauvegarder, marquer et gérer des commandes et des extraits dans les systèmes Linux et similaires à Unix.
Nous avons déjà essayé et examiné certains d'entre eux dans le passé. Si vous souhaitez en savoir plus à leur sujet, référez-vous aux guides suivants.
- Conserver - Enregistrer les commandes Linux et les utiliser à la demande
- Pet - Un gestionnaire de snippets simple en ligne de commande
- Bashpast - Marquez Les Commandes Linux Pour Une Invocation Répétée Plus Facile
Conclusion
Dans ce tutoriel, nous avons discuté de quelques conseils utiles pour retrouver les commandes à partir du fichier d'historique sous Linux.
En utilisant ces conseils, vous pouvez naviguer efficacement dans votre historique de commandes et récupérer des commandes longues sans avoir besoin de les retaper.
C'est votre tour. Quelles sont vos méthodes efficaces pour retrouver des commandes dans l'historique de votre shell ? Faites-le nous savoir dans la section des commentaires ci-dessous.
Lecture connexe :
- Astuces de ligne de commande Linux pour un flux de travail efficace et plus rapide
- 15 commandes Linux essentielles que tout débutant devrait connaître
- Les meilleurs commandes Linux modernes pour débutants et experts



