Je peux imprimer mon répertoire de travail actuel comme ceci
myPrompt$ pwd /Users/me/myDir
Je veux mon shell ressembler à ceci
/Users/me/myDir$ pwd /Users/me/myDir
Est-ce possible? Comment puis-je faire?
Commentaires
Réponse
Vous pouvez utiliser des séquences déchappement dans linvite variables .
Mettez ceci dans vos ~/.bashrc
:
PS1="\w\$ "
Commentaires
- merci. Jai fait ce changement. Maintenant je vois: Abrams-MacBook-Air-3: tmp abramhandler $ pwd; / Users / abramhandler / tmp Abrams-MacBook-Air-3: tmp abramhandler $ …. Je veux afficher uniquement la partie qui dit » tmp » pour mon invite. Comment cacher le reste? Je souhaite masquer » abramhandler » et » Abram ‘ s-MacBook-Air-3 » pièces
- @ akh2103 utilisez
\W
au lieu de\w
. Voir le lien que Gilles vous a donné pour une (courte) explication des codes déchappement. - @terdon Je vois la même chose avec \ W et \ w. Jutilise Unix sous OSX.
- @ akh2103 si vous exécutez OSX et utilisez lapplication de terminal, vous devez apporter des modifications à ~ / .profile et non à .bashrc car le terminal exécute un shell de connexion par défaut. Vous devez également rechercher ~ / .profile ou ouvrir un nouveau terminal pour que les modifications prennent effet. Veuillez également modifier pour ajouter plus dinformations, je ne peux ‘ pas comprendre ce que vous demandez dans votre dernier commentaire .
- @terdon quand jexécute source ~ / .profile cela change le chemin correctement dans le terminal actuel. Mais lorsque jouvre un nouveau terminal, je vois toujours » abram ‘ s mac book air » etc. Jai essayé dajouter source ~ / .profile aux fichiers .profile et .bashrc mais toujours pas de chance. Des idées?
Réponse
Voici « un guide unique pour OSX. Il ajoute linvite souhaitée dans le fichier de profil, puis recharge le profil.
echo "PS1="\w\$ "" >> ~/.bash_profile; source ~/.bash_profile
Sur El Capitan, vous « voudrez utiliser
echo "PS1="\w\$ "" >> ~/.profile; source ~/.profile
Réponse
Pour une raison quelconque, "\w\$"
na pas fonctionné pour moi mais à la place je did: export PS1="$(pwd) \$"
et cela a fonctionné.
Commentaires
- Cela ne fonctionnera pas très bien lorsque vous changer de répertoire …
Réponse
On dirait un vieux fil de discussion, mais les étapes ci-dessous ont fonctionné pour moi sur OS X 10.9.5
- mettez
PS1="\w\$ "
dans~/.profile
- si vous avez fait toute modification apportée à
~/.bashrc
les supprimer - fermer le terminal avec cmd+q
- rouvrir le terminal
Commentaires
- Dans mon cas, le PATH complet est vraiment gros, jai donc ajouté un autre indicateur pour la ligne suivante comme PS1 = ‘ \ w \ n \ $ ‘
Réponse
Solution simple
Ouvrez ~/.bash_profile
et ajoutez le contenu suivant
# \[\e[0m\] resets the color to default color reset_color="\[\e[0m\]" # \[\033[33m\] sets the color to yellow path_color="\[\033[33m\]" # \e[0;32m\ sets the color to green git_clean_color="\[\e[0;32m\]" # \e[0;31m\ sets the color to red git_dirty_color="\[\e[0;31m\]" # determines if the git branch you are on is clean or dirty git_prompt () { # Is this a git directory? if ! git rev-parse --git-dir > /dev/null 2>&1; then return 0 fi # Grab working branch name git_branch=$(git branch 2>/dev/null| sed -n "/^\*/s/^\* //p") # Clean or dirty branch if git diff --quiet 2>/dev/null >&2; then git_color="${git_clean_color}" else git_color="${git_dirty_color}" fi echo " [$git_color$git_branch${reset_color}]" } export PS1="${path_color}\w\[\e[0m\]$(git_prompt)\n"
Ce devrait:
1) Prompt the path you"re in, in color: path_color. 2) Tell you which branch are you. 3) Color the name of the branch based on the status of the branch with git_clean_color for a clean work directory and git_dirty_color for a dirty one. 4) The brackets should stay in the default color you established in your computer. 5) Puts the prompt in the next line for readability.
Vous pouvez personnaliser les couleurs avec cette liste
Solution sophistiquée
Une autre option consiste à utiliser Git Bash Prompt, installer avec ceci . Jai utilisé loption via Homebrew sur Mac OS X.
git_prompt_list_themes
pour voir les thèmes mais je nai aimé aucun dentre eux.
git_prompt_color_samples
pour voir les couleurs disponibles.
git_prompt_make_custom_theme [<Name of base theme>]
pour créer un nouveau thème personnalisé, cela devrait créer un .git -prompt-colors.sh file.
subl ~/.git-prompt-colors.sh
pour ouvrir git-prompt-colors.sh et personnaliser:
Le .git- Le fichier prompt-colors.sh devrait ressembler à ceci avec ma personnalisation
override_git_prompt_colors() { GIT_PROMPT_THEME_NAME="Custom" # Clean or dirty branch if git diff --quiet 2>/dev/null >&2; then GIT_PROMPT_BRANCH="${Green}" else GIT_PROMPT_BRANCH="${Red}" fi } reload_git_prompt_colors "Custom"
Cette réponse est basée sur ma réponse SO que vous pouvez voir ici . Jespère que cela vous aidera, passez une excellente journée!
Commentaires
- Je pense que lOP avait lintention dafficher simplement le shell ‘ s répertoire de travail. En tant quutilisateur Git régulier, je ‘ utilise également une invite sophistiquée compatible Git, mais cela semble exagéré ici.
~/.bash_profile
,~/.bash_login
et~/.profile
, dans cet ordre, et lit et exécute les commandes à partir du premier qui existe et est lisible. Dans tous les cas, cest vraiment un commentaire et non une réponse, donc je le convertis en un.