History .bashrc

Résolu/Fermé
Utilisateur anonyme - Modifié par sanspileonperdlaface le 21/07/2010 à 23:18
 Utilisateur anonyme - 22 juil. 2010 à 13:14
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

mamiemando Messages postés 33079 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 23 avril 2024 7 749
Modifié par mamiemando le 22/07/2010 à 00:02
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
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
22 juil. 2010 à 08:31
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
Utilisateur anonyme
22 juil. 2010 à 10:41
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
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
22 juil. 2010 à 11:04
il faut séparer les éléments par : et non pas ,
export HISTCONTROL=$HISTCONTROL${HISTCONTROL+:}ignoredups
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
22 juil. 2010 à 13:14
oh super!
c'est corrigé et cette fois tout fonctionne!
merci beaucoup
résolu!
0