• [^] # Re: en utilisant la commande history du bash

    Posté par . En réponse au message Recherche d'une fonctionnalité zsh / bash. Évalué à 4. Dernière modification le 29 octobre 2022 à 16:25.

    On s'habitue très vite au confort, et du coup, j'avais oublié de spécifier dans mes message précédents que que sur mon système, j'ai activé depuis longtemps l'option histverify de mon shell bash

    en ajoutant, dans mon fichier de configuration ~/.bashrc
    la ligne de commande suivante :
    shopt -s histverify

    NOTE :
    Il me semble que, pour le shell zsh, l'option histverify est activée par défaut.

    C'est grâce à cette option que la ligne de commande entrée :

    michel@deb115:~$ head -1 !:1

    s'affiche d'abord en clair afin de me permettre de vérifier si la ligne de commande qui va être lancée correspond bien à ce que je voulais lancer :

    michel@deb115:~$ head -1 .bashrc

    Toujours en utilisant les fonctionnalités de la commande history,
    on peut lister les dernières commandes lancées pour récupérer le numéro d'enregistrement qui sera affiché en lançant simplement la commande history
    et on peut utiliser le premier, deuxième, etc. argument donné dans cette ligne de commande
    en spécifiant le numéro d'enregistrement de la commande et le numéro d'ordre de l'argument utilisé :

    Par exemple, si dans le retour de la commande history,
    j'ai la ligne suivante qui s'affiche :

     31 apt policy gawk ncdu vim-nox

    Je peux récupérer le troisième argument (ncdu) qui avait été donné à la commande apt dans cette ligne de commande en entrant : !31:3

    Donc, si je veux installer le paquetage ncdu
    je pourrais entrer la ligne de commande suivante :

    apt install !31:3

    Si l'option du shell histverify n'est pas activée, la ligne de commande sera directement lancée, sinon, elle sera d'abord affichée et on pourra choisir de la lancer (ou pas).

    ... et dans ce royaume, ceux qui y voient un peu plus clair sont parfois très mal vus.