GNU/Linux >> Tutoriels Linux >  >> Linux

Nettoyage automatique de l'historique de Bash ?

Comment l'historique de Bash peut-il être automatiquement nettoyé ? Par exemple

  • Supprimer les fautes de frappe détectables de l'historique (ls-lh n'apparaît pas dans which , donc il est supprimé, je voulais taper ls -lh )
  • Nettoyer les espaces excessifs cd  / et cd /    doivent être normalisés pour qu'ils soient identiques.

Cela peut-il être fait en bash? Peut-être un filtre sur toutes les commandes avant qu'elles ne soient exécutées, ou avant qu'elles n'entrent dans l'historique ?

J'espère que je n'aurai pas à attendre qu'il soit écrit dans le fichier avant d'exécuter une routine de nettoyage. Cela signifierait se déconnecter avant que le nettoyage ne se produise. :(

Réponse acceptée :

je préférerais garder un alias pour toutes les erreurs courantes qui se produisent exemple

alias ls-lh = ls -lh

Utilisez un alias pour corriger les erreurs d'espace manquantes :

alias cd..='cd ..

Utilisez HISTIGNORE pour spécifier toutes les commandes que vous souhaitez ignorer de l'historique. utilisez export HISTIGNORE="$LIST" à la liste que vous souhaitez ignorer à l'intérieur de l'histoire

Il existe plusieurs autres options intéressantes contrôlées par la commande intégrée "shopt".

voir ici


Linux
  1. Conserver l'historique de Bash dans plusieurs terminaux Windows ?

  2. Pourquoi définir une variable avant une commande est-il légal dans Bash ?

  3. Comprendre le point d'exclamation (!) dans Bash ?

  4. Historique bash sans numéro de ligne

  5. connexion docker automatique dans un script bash

Commande d'historique sous Linux (historique de bash)

Comment activer l'horodatage dans l'historique de Bash sous Linux

Comment effacer l'historique de Bash sous Linux et Mac

CentOS / RHEL :Comment désactiver l'historique du shell BASH

Comment désactiver la modification de mon historique dans bash

pourquoi supprimer l'historique bash n'est pas suffisant?