History .bashrc

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonsoir,
est-ce que quelqu'un pourrait m'expliquer simplement le contenu de mon fichier .bashrc ?
uniquement :

export HISTCONTROL=ignoreboth

export HISTCONTROL=ignoredups

export HISTCONTROL=erasedups

export HISTCONTROL=ignoreboth:erasedups

supprimer les doublons de mon historique par exemple avec
export HISTCONTROL=ignoredups n'a aucun effet...
donc je ne comprends pas les différences.
merci de vos précisions

5 réponses

  1. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 940
     
    Ca peut dépendre de ta version de bash.

    man bash


    ... donne chez moi :

           HISTCONTROL  
                  A  colon-separated  list  of values controlling  
                  how commands are saved on the history list.  If  
                  the  list of values includes ignorespace, lines  
                  which begin with  a  space  character  are  not  
                  saved   in   the  history  list.   A  value  of  
                  ignoredups causes lines matching  the  previous  
                  history  entry  to  not  be  saved.  A value of  
                  ignoreboth is  shorthand  for  ignorespace  and  
                  ignoredups.   A  value  of erasedups causes all  
                  previous lines matching the current line to  be  
                  removed  from the history list before that line  
                  is saved.  Any value not in the above  list  is  
                  ignored.   If HISTCONTROL is unset, or does not  
                  include a valid value, all lines  read  by  the  
                  shell  parser  are  saved  on the history list,  
                  subject to the value of HISTIGNORE.  The second  
                  and  subsequent  lines of a multi-line compound  
                  command are not tested, and are  added  to  the  
                  history regardless of the value of HISTCONTROL.


    Bonne chance
    0
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    HISTCONTROL
    ...
    Si elle contient la valeur ignoredups, une ligne correspondant exactement à la ligne de commande précédente ne sera pas dupliquée dans l'historique.

    ce ne sont pas tous les doublons, mais les lignes identiques qui se suivent qui sont ignorées
    http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man1/bash.1.html
    0
  3. Utilisateur anonyme
     
    Bonjour à vous deux et merci!
    effectivement Mamiemando, mon bash indique ça et il vaudrait mieux que je prenne le condensé, c'est à dire ignoreboth et erasedups :
    export HISTCONTROL=ignoreboth:erasedups est déjà dans mon fichier .bashrc
    mais j'ai également :
    export HISTCONTROL=$HISTCONTROL${HISTCONTROL+,}ignoredups

    sauf que la valeur erasedups "devraient" prendre en considération toutes les lignes qui précèdent ma ligne courante, donc retirer les anciennes identiques?
    et c'est là que ça pose problème chez moi, parce que cette ligne, je l'ai ajoutée depuis longtemps et j'obtiens toujours des doublons depuis...et même encore actuellement, les commandes identiques que j'ajoute ne sont pas ignorées. Est-ce qu'il y a quelquechose que je n'ai pas compris?
    merci de votre aide
    0
  4. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    il faut séparer les éléments par : et non pas ,
    export HISTCONTROL=$HISTCONTROL${HISTCONTROL+:}ignoredups
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Utilisateur anonyme
     
    oh super!
    c'est corrigé et cette fois tout fonctionne!
    merci beaucoup
    résolu!
    0