Parfois, j'aime avoir des alias bash très personnalisés et peut-être des raccourcis clavier lorsque j'entre dans un dossier (peut être un projet où j'ai l'habitude de taper beaucoup de commandes depuis CLI).
Supposons que lorsque j'entre dans un dossier comme "projectAlpha /", j'attends des alias personnalisés comme:
alias doTaskX='./app arg1 arg2...|filter arg1 arg2...'
- ...
Plus que ce à quoi je pensais:
- Afficher un message utile montrant les alias et les commandes courantes
- Affichage de quelques raccourcis clavier courants pour mon projet
Mais dès que je quitte la racine de mon projet, ces paramètres deviennent indisponibles.
Quelle est la meilleure approche pour le faire aujourd'hui?
Réponses:
Bash a une variable spéciale
PROMPT_COMMAND
dont le contenu est exécuté à chaque fois après l'exécution de la commande, vous pouvez donc le définir comme suit:Désormais, chaque fois que vous serez dans le
/tmp
répertoire, un aliasll
sera créé et dans tous les autres répertoires, il sera supprimé.Il est probablement plus pratique de rassembler tous vos alias et autres éléments dans une fonction (par exemple
makealias
) et tous les alias dans l'autre fonctionmakeunalias
que vous pouvez exécuter en fonction de vos besoins, quelque chose commeNotez que la redirection stderr est présente uniquement pour éviter certaines alertes inutiles dans ce cas.
la source