Я використовую iTerm в Mac OS X 10.6. Здається, коли я відкриваю програму iTerm, ні її .bashrcне .bash_profileотримують. Я можу сказати, оскільки псевдоніми, визначені в .bashrc, не встановлені. Як виправити?
Я використовую iTerm в Mac OS X 10.6. Здається, коли я відкриваю програму iTerm, ні її .bashrcне .bash_profileотримують. Я можу сказати, оскільки псевдоніми, визначені в .bashrc, не встановлені. Як виправити?
Відповіді:
Bash буде джерелом EITHER .bash_profile або .bashrc, залежно від способу його виклику. Якщо це оболонка для входу, Bash шукає у цьому порядку ~ / .bash_profile, ~ / .bash_login або ~ / .profile та надсилає першу, яку він знайде (і лише цю). Якщо це не оболонка для входу, але інтерактивна (як і більшість термінальних сеансів), Bash видасть ~ / .bashrc.
Ймовірно, iTerm шукає ~ / .bashrc. Якщо він налаштований для запуску в якості оболонки для входу, він буде шукати ~ / .bash_profile. Це майже напевно помилка в конфігураційному файлі, а не в тому, що оболонка не отримує його.
Я б поставив рядок на початку кожного файлу. Угорі ~ / .bash_profile:
export BASH_CONF="bash_profile"
І вгорі ~ / .bashrc:
export BASH_CONF="bashrc"
Потім відкрийте новий iTerm і введіть
$ echo $BASH_CONF
Це повинно підтвердити пошук файлу, і ви можете переглянути синтаксис файлу.
В iTerm2 жоден із цих рішень не працював для мене. Мені вдалося змусити його правильно прочитати мій файл .bashrc, додавши команду
source ~/.bashrc
до поля Надіслати текст на початку: у розділі Налаштування / Загальне для мого профілю iTerm.

~/.bashrc. Редагував це.
Мені просто цікаво, чи ти справді використовуєш Bash? Можливо, ви можете використовувати echo $SHELL, цілком можливо, що ви використовуєте zsh , ви встановили на-my-zh ?
Насправді я зіткнувся з тією ж проблемою, що і ви, я вирішую її, налаштувавши ~ / .zshrc замість цього ~ / .bash_profile для оболонки для входу або ~ / .bashrc для оболонки, яка не входить у систему.
Можливо, ви можете спробувати
На моїй машині 10,6 ~/.profileджерела. Таким чином, source .bashrcзапис ~/.profileповинен робити цю роботу.
Легке виправлення.
1. Відкрийте свій ~/.zshrcфайл
2. Додайте наступний рядок у кінці файлу.
source ~/.bash_profile
Помістіть свої псевдонімні визначення у файл профілю bash, ви повинні створити файл, але він буде отриманий автоматично. Я створюю окремий файл під назвою alias.configuration і вивожу його в .bash_profile лише тому, що у мене визначений інший користувач і хочу встановити той самий псевдонім.
.bashrcне .bash_profileотримуються.
Додайте
set -x
до початку с /etc/profile. Це дає вам покроковий запис про все, що виконується під час bashзапуску, включаючи файли, отримані зсередини /etc/profile, ~/.bash_profileі т. Д. Це трохи неприємно, якщо ви не bashдуже добре розумієте сценарії, але ви зможете побачити, чи у файлі запуску є помилка, і вихід буде корисним для того, хто має досвід, bashщоб допомогти вам знайти вашу проблему.
Ви можете видалити set -xрядок, коли закінчите усунення несправностей.
10.10 та iTerm2 2.0 - індивідуальний профіль
Я поєднав пару рішень разом, щоб працювати як слід.
.bash_profile джерело та запустіть на zsh.
Preferences -> Profiles -> General .
Виберіть команду під командою.
І додайте в текстове поле /bin/bash --login.
Потім у .bash_profile додайте рядок
/bin/zsh --login
Це воно.
bashпостійно бігаєте zsh, то ніхто не очікує.
source ~/.bash_profileвручну. @Scott Після виконання вищезазначених речей у мене є zsh необхідним чином.
zshщо ви можете хотіти , але це не вимагається і не вимагається цим питанням, яке позначено тегом [bash] і нічого не говорить про це zsh. (2) Якщо ви визначаєте псевдоніми та функції оболонки та встановлюєте змінні (не експортуючи їх) у вашому .bashrcта / або .bash_profile, чи вони доступні вам у вашій zshоболонці?
~/.bash_profile, викликає спочатку bash, що є коротким замиканням на інструкції, які ви маєте~/.bashrc. Ця проблема може статися несподівано, якщо програма-шахрая додасть до вас якісь інструкції,~/.bash_profileколи раніше файл не існував, і ви помістили всі ваші команди bash~/.bashrc. Рішення полягає в тому, щоб або видалити ~ / .bash_profile, або мати джерело ~ / .bash_profile своїм ~ / .bashrc. Це можна виконати, додавши команду:source ~/.bashrcдо кінця~/.bash_profileта перезапустивши термінал.