Existe-t-il un moyen de modifier l'invite sur des répertoires différents sur le même ordinateur? Par exemple, je veux une simple invite "[\ W] \ $" dans les répertoires de développement.
Vous pouvez mettre quelque chose comme ça dans votre .bashrc.
prompt-function(){case $PWD in/a/dev/dir\
|/another/dev/dir)
PS1="[\W] \$";;*)# Change this to the default prompt
PS1="\$ ";;esac}
PROMPT_COMMAND=prompt-function
+1 Je voudrais utiliser une casedéclaration au lieu d'une série de elsifdéclarations. Vous pouvez même placer les répertoires dans un tableau et les parcourir avec une boucle for. Vous pouvez utiliser des motifs globulants avec l’une de ces techniques ou utiliser des regex avec [[ $PWD =~ $pattern ]].
Dennis Williamson
@ Dennis: J'ai édité ma réponse avec une casedéclaration. Merci pour la suggestion.
Wuffers
Si l'action est identique, vous pouvez la répertorier une fois après les autres cas séparés par des caractères de canal. foo|bar) action;;Vous pouvez mettre les cas sur des lignes séparées en mettant une barre oblique inverse et une nouvelle ligne avant ou après le caractère de canal.
Dennis Williamson
@ Dennis: Modifié ma réponse en conséquence, encore. Merci pour la suggestion!
Réponses:
Vous pouvez mettre quelque chose comme ça dans votre
.bashrc
.la source
case
déclaration au lieu d'une série deelsif
déclarations. Vous pouvez même placer les répertoires dans un tableau et les parcourir avec une boucle for. Vous pouvez utiliser des motifs globulants avec l’une de ces techniques ou utiliser des regex avec[[ $PWD =~ $pattern ]]
.case
déclaration. Merci pour la suggestion.foo|bar) action;;
Vous pouvez mettre les cas sur des lignes séparées en mettant une barre oblique inverse et une nouvelle ligne avant ou après le caractère de canal.