J'utilise iTerm sous Mac OS X 10.6. Il semble que lorsque j'ouvre iTerm, ni l'un .bashrc
ni l' autre ne .bash_profile
soient fournis. Je peux le dire car les alias définis dans .bashrc
ne sont pas définis. Comment réparer?
J'utilise iTerm sous Mac OS X 10.6. Il semble que lorsque j'ouvre iTerm, ni l'un .bashrc
ni l' autre ne .bash_profile
soient fournis. Je peux le dire car les alias définis dans .bashrc
ne sont pas définis. Comment réparer?
Réponses:
Bash recherchera SOIT .bash_profile ou .bashrc, en fonction de la manière dont il est appelé. S'il s'agit d'un shell de connexion, Bash recherche ~ / .bash_profile, ~ / .bash_login ou ~ / .profile, dans cet ordre, et source le premier qu'il a trouvé (et uniquement celui-là). S'il ne s'agit pas d'un shell de connexion, mais qu'il est interactif (comme la plupart des sessions de terminal), Bash fournira ~ / .bashrc.
ITerm est probablement à la recherche de ~ / .bashrc. S'il est configuré pour démarrer en tant que shell de connexion, il recherchera ~ / .bash_profile. C'est presque certainement une erreur dans le fichier de configuration plutôt que le fait que le shell ne le recherche pas.
Je mettrais une ligne au début de chaque fichier. Au sommet de ~ / .bash_profile:
export BASH_CONF="bash_profile"
Et au sommet de ~ / .bashrc:
export BASH_CONF="bashrc"
Ensuite, ouvrez un nouveau iTerm et tapez
$ echo $BASH_CONF
Cela devrait confirmer que le fichier est en cours d’acquisition et vous pouvez examiner la syntaxe du fichier.
Dans iTerm2, aucune de ces solutions ne fonctionnait pour moi. J'ai pu l'obtenir pour lire correctement mon fichier .bashrc en ajoutant la commande
source ~/.bashrc
au champ Envoyer le texte au début: dans Réglages / Général pour mon profil iTerm.
~/.bashrc
. Édité il.
Je me demande juste utilisez-vous vraiment Bash? Peut-être que vous pouvez utiliser echo $SHELL
, il est fort possible que vous utilisiez zsh , avez-vous installé on-my-zh ?
En fait, je rencontre le même problème que vous. Je résous le problème en configurant ~ / .zshrc à la place soit ~ / .bash_profile pour le shell de connexion ou ~ / .bashrc pour le shell sans connexion.
Peut-être que vous pouvez essayer
Sur ma machine 10.6 ~/.profile
est source. Donc, une source .bashrc
entrée dans ~/.profile
devrait faire le travail.
Solution facile.
1. Ouvrez votre ~/.zshrc
fichier
2. Ajoutez la ligne suivante à la fin du fichier.
source ~/.bash_profile
Mettez vos définitions d’alias dans le fichier de profil bash, vous devez créer le fichier mais il sera recherché automatiquement. Je crée un fichier séparé appelé alias.configuration et le source dans .bash_profile simplement parce que j'ai un autre utilisateur défini et que je souhaite avoir le même alias.
.bashrc
ni .bash_profile
sont originaires.
Ajouter
set -x
au début de /etc/profile
. Cela vous donne un compte en ligne par ligne de tout ce qui est exécuté lorsque bash
démarre, y compris les fichiers provenant de l' intérieur /etc/profile
, ~/.bash_profile
etc. Il est un peu intimidant si vous ne comprenez pas bash
très bien les scripts, mais vous pouvez être en mesure de voir si il y a une erreur dans un fichier de démarrage et le résultat sera utile à une personne compétente bash
pour vous aider à localiser votre problème.
Vous pouvez supprimer la set -x
ligne lorsque vous avez terminé le dépannage.
Sur 10.10 et iTerm2 2.0, profil personnalisé
J'ai combiné plusieurs solutions pour que cela fonctionne comme prévu.
.bash_profile
source et exécuté sur zsh.
Preferences -> Profiles -> General
.
Sélectionnez Commande sous Commande.
Et ajoutez dans la zone de texte /bin/bash --login
.
Puis dans .bash_profile add line
/bin/zsh --login
C'est ça.
bash
toujours couru zsh
, ce n'est pas ce que tout le monde attend.
source ~/.bash_profile
manuellement. @ Scott Après avoir fait les choses ci-dessus, j'ai zsh de la manière requise.
zsh
peut-être ce que vous désirez , mais ce n'est pas obligatoire ni demandé par cette question, qui est marquée [bash] et ne dit rien zsh
. (2) Si vous définissez des alias et des fonctions de shell et définissez des variables (sans les exporter) dans votre .bashrc
et / ou .bash_profile
, sont-elles disponibles dans votre zsh
shell?
~/.bash_profile
d’abord appelé bash, qui court-circuite les instructions que vous avez~/.bashrc
. Ce problème peut se produire de manière inattendue si un programme malveillant ajoute des instructions à votre~/.bash_profile
fichier alors qu'il n'existait pas auparavant et que vous avez placé toutes vos commandes bash~/.bashrc
. La solution consiste à supprimer votre fichier ~ / .bash_profile ou à utiliser le fichier source ~ / .bash_profile dans votre fichier ~ / .bashrc. Ceci peut être effectué en ajoutant la commande:source ~/.bashrc
à la fin de votre~/.bash_profile
et en redémarrant le terminal.