66 votes

iTerm/zsh ne lit pas le fichier .bashrc OU .bash_profile

En ~/.bash_profile J'ai :

if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

En ~/.bashrc J'ai quelques pseudonymes

Lorsque je charge une nouvelle fenêtre iTerm, mes alias ne fonctionnent pas. Si je source ~/.bashrc ils fonctionnent. Si je source ~.bash_profile ils fonctionnent.

L'une d'entre elles au moins n'est-elle pas censée être générée automatiquement ?

Quelle pourrait être la cause de son mauvais fonctionnement ?

83voto

majjam Points 101

La réponse est simple, presque évidente dans la question. Voici pourquoi :

Le Shell zsh n'est pas bash il s'agit d'un Shell différent. zsh n'utilisera pas les fichiers par défaut construits pour bash : .bashrc ou .bash_profile . Ces deux fichiers sont des fichiers de configuration de démarrage pour bash . zsh a ses propres fichiers de configuration de démarrage.

Vous pouvez trouver plus d'informations à leur sujet ici sur le site de la Commission européenne. zsh page d'accueil :

Il existe cinq fichiers de démarrage à partir desquels zsh lira les commandes :

$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout

Vous avez mentionné que vos alias ne fonctionnent pas, pour résoudre ce problème, appliquez vos alias ici comme suit :

~/.zshrc

alias sz='source ~/.zshrc'     # Easily source your ~/.zshrc file.
alias ls='pwd; ls --color'     # Alias 'ls' to: pwd + ls + color.

37voto

Daniel Points 1224

Si vous utilisez zsh alors pour forcer la source .bash_profile

sur ~/.zshrc ajouter la ligne ci-dessous

source ~/.bash_profile

P.S - Je n'ai pas cherché à savoir si cela pouvait poser un problème.

3voto

I Don't Exist Points 131

Copiez les lignes de ~/.bash_profile à ~/.zshrc

cat ~/.bash_profile >> ~/.zshrc

Et ouvrez un nouvel onglet/fenêtre du terminal ou utilisez source ~/.zshrc

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