2 votes

Puis-je associer l'historique de mes commandes en fonction de mon cwd ?

Je navigue souvent entre plusieurs répertoires dans une session bash. Parfois jusqu'à 4. Pour chaque répertoire dans lequel je me trouve, j'ai souvent un ensemble exclusif de commandes que je lance et cet ensemble peut compter entre 7 et 10 commandes. Je me demandais s'il était possible de créer une association entre l'historique de mes commandes bash et le répertoire dans lequel ces commandes ont été lancées. J'apprécierais toute suggestion.

1voto

galeksic Points 121

Vous pouvez utiliser PROMPT_COMMAND pour vérifier $PWD et prendre les mesures appropriées, quelque chose comme ça :

PROMPT_COMMAND='if [[ $PWD =~ /usr/share ]]; then echo take action in /usr/share; fi'

1voto

Utilisez la redéfinition suivante pour cd et mettre ces lignes dans .bashrc :

            HISTFILE=$HOME/.bash_history.`echo $PWD|sed -e 's/\//_/g'`
            cd () {
                history -a
                command cd "$@"
                HISTFILE=$HOME/.bash_history.`echo $PWD|sed -e 's/\//_/g'`
                history -c
                history -r
            }

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X