Я використовую 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
та перезапустивши термінал.