[TIP] HSTR, l'historique du terminal à portée de clavier.

Questions et astuces...
Répondre
Avatar du membre
jlb
Membre émérite
Membre émérite

Membre super posteur
Messages : 2776
Enregistré(e) le : mer. 11 avr. 2018 08:31
Localisation : Hautes-Pyrénées (65)
Nb de « J’aime » donnés: 321
Nb de « J’aime » reçus: 1377
A remercié : 472 fois
A été remercié(e) : 875 fois

[TIP] HSTR, l'historique du terminal à portée de clavier.

Message n° 1


Message par jlb »

S'il vous arrive de vous servir du terminal pour gérer votre système et faire deux ou trois bricoles, vous savez sans doute déjà que les touches "Haut" et "Bas" du curseur permettent d'en parcourir l'historique, de retrouver des lignes de commande oubliées et d'éviter d'avoir à les saisir à nouveau — surtout si vous êtes un peu handicapés du clavier, comme moi... 😳

Mais la liste s'allonge vite et ce n'est finalement pas très commode, d'autant que les commandes mal formulées ou les fautes de frappe viennent la polluer...

Heureusement il y a hstr (comme HiSToRy), une application développée et maintenue depuis 10 ans, compatible avec "bash" et "zsh", et qui le fait beaucoup mieux !



Présentation

Une fois "hstr" installé , tapez "hh" dans le terminal pour le lancer.

A la manière de FSearch, votre recherche se précise au fil de la saisie.
Pas la peine d'aller jusqu'au bout, trois ou quatre caractères suffisent souvent pour trouver ce qu'on cherche :

hstr #1.png
Sélectionnez la ligne de commande voulue à l'aide de la flèche "Bas" et lancez-la avec "Entrée".


Mieux encore, vous pouvez nettoyer l'historique de toutes les lignes redondantes, fautives ou sans intérêt sans avoir à éditer le fichier ".bash_history".

Choisissez la ligne à supprimer, tapez la touche "Suppr", confirmez par "y", toutes ses occurrences sont supprimées :

hstr #3.png
   
hstr #4.png

Il vous faudra bien sûr procéder au coup par coup pour supprimer les fautes de saisie — si j'avais voulu les inventer, je n'aurais pas fait mieux... 😅

hstr #5.png


Les bandeaux supérieurs affichent quelques raccourcis utiles ("C-" étant "CTRL").
Vous pouvez ainsi composer une liste de favoris avec "CTRL f".
Pour "C-/", faites "CTRL Maj /", le raccourci ne semblant pas fonctionner avec le slash du pavé numérique :

hstr #7.png



Un essai ?

 Installation
  • Sur Zorin 16 (ou sur Ubuntu 20.04 ou antérieur), il faut ajouter le PPA du développeur à la liste des sources :

    Code : Tout sélectionner

    sudo add-apt-repository ppa:ultradvorka/ppa && sudo apt update && sudo apt install hstr && hstr --show-configuration >> ~/.bashrc && . ~/.bashrc
    
  • Sur une version plus récente d'Ubuntu (future Zorin 17 ou Ubuntu 21.10 et plus), l'application a été ajoutée aux dépôts officiels :

    Code : Tout sélectionner

    sudo apt update && sudo apt install hstr && hstr --show-configuration >> ~/.bashrc && . ~/.bashrc
    
    Remarque : ces commandes enregistreront aussi quelques lignes de configuration à la fin du fichier ".bashrc" qui créeront l'alias "hh" pour lancer "hstr", apporteront un peu de couleur à l'interface comme sur mes copies d'écran et porteront la taille de l'historique à 10000 entrées — cette page vous dira tout sur les options disponibles.
      
  • Pour installer "hstr" sur d'autres distributions, comme Debian — ou carrément le compiler si vous ne trouvez pas votre distribution dans la liste — suivez ce lien.
    Une fois l'installation terminée, entrez cette ligne pour activer la configuration :

    Code : Tout sélectionner

    hstr --show-configuration >> ~/.bashrc && . ~/.bashrc
    
   

Désinstallation
  • Sur Zorin 16 (ou jusqu'à Ubuntu 20.04) :

    Code : Tout sélectionner

    sudo apt purge hstr && sudo add-apt-repository --remove ppa:ultradvorka/ppa && sudo apt update
    
  • Depuis Ubuntu 21.10 :

    Code : Tout sélectionner

    sudo apt purge hstr
    
  • :idea:  Vous pouvez supprimer les lignes de configuration :
     

    Code : Tout sélectionner

    gedit .bashrc
    
    ... et remplacer les lignes 19-20 par celles-ci pour conserver le bénéfice de l'augmentation de la taille de l'historique :

    Code : Tout sélectionner

    export HISTFILESIZE=10000
    export HISTSIZE=${HISTFILESIZE}
    
🙃



Encore un article qui va déchaîner l'enthousiasme de la communauté... 🤭🤭🤭


Pourtant, après en avoir pris connaissance, le nouvel outil d'IA collaboratif développé par Google conclut fort justement que :
hstr est une application utile pour les utilisateurs de Linux qui souhaitent améliorer l'utilisation de l'historique du terminal. Elle offre plusieurs fonctionnalités qui facilitent la recherche et la gestion de l'historique, ce qui peut économiser du temps et des efforts.
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Modifié en dernier par jlb le sam. 30 sept. 2023 18:29, modifié 1 fois.
2 J'aime ce message
“Un censeur capable, doit à première vue, déterrer dans le mot ophicléide une injure à la morale.” (André Gill) 
Avatar du membre
jlb
Membre émérite
Membre émérite

Membre super posteur
Messages : 2776
Enregistré(e) le : mer. 11 avr. 2018 08:31
Localisation : Hautes-Pyrénées (65)
Nb de « J’aime » donnés: 321
Nb de « J’aime » reçus: 1377
A remercié : 472 fois
A été remercié(e) : 875 fois

[TIP] HSTR, l'historique du terminal à portée de clavier.

Message n° 2


Message par jlb »

Un raccourci clavier bien utile !


Pas besoin de taper l'alias "hh" dans le terminal pour lancer "hstr" : "CTRL r" le fait instantanément.

Cerise sur le gâteau, si vous n'avez pas installé "hstr", vous pouvez faire à peu près la même chose avec "CTRL r".

Une zone de recherche s'ouvre, tapez-y un mot-clef et précisez-le jusqu'à ce que la ligne désirée s'affiche.
Faites "Entrée" pour l'exécuter.

ctrl r.png

On en découvre tous les jours... 🙄
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
2 J'aime ce message
“Un censeur capable, doit à première vue, déterrer dans le mot ophicléide une injure à la morale.” (André Gill) 
Répondre

Créer un compte ou se connecter pour rejoindre la discussion

Vous devez être membre pour pouvoir répondre

Créer votre compte

Inscrivez-vous pour rejoindre notre communauté.
Participez aux discussions !
Créez vos propres sujets !

S’enregistrer

Membre déjà inscrit