Я не уверен, что понимаю ваши вопросы, но:
Ваши файлы инициализации bash должны быть получены при загрузке. Если нет, ваша система плохо настроена или сломана.
Вы не упомянули свою операционную систему, но я предполагаю, что вы используете Linux, в любом случае.
Последовательность инициализации, согласно man bash
следующей:
Когда bash вызывается как интерактивная оболочка входа в систему или как неинтерактивная оболочка с параметром --login, она сначала читает и выполняет команды из файла / etc / profile, если этот файл существует. После прочтения этого файла он ищет ~ / .bash_profile, ~ / .bash_login и ~ / .profile в указанном порядке, а также читает и выполняет команды из первой, которая существует и доступна для чтения. Опция --noprofile может использоваться, когда оболочка запущена, чтобы запретить это поведение.
Когда запускается интерактивная оболочка, которая не является оболочкой входа в систему, bash читает и выполняет команды из /etc/bash.bashrc и ~ / .bashrc, если эти файлы существуют. Это может быть запрещено с помощью параметра --norc. Опция --rcfile file заставит bash читать и выполнять команды из файла вместо /etc/bash.bashrc и ~ / .bashrc .
Например, в дистрибутиве Ubuntu после загрузки /etc/profile
он ищет ~/.profile
файл, который выглядит следующим образом:
if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi
Это означает, что, если вы используете bash и файл ~/.bashrc
существует, он будет загружен / получен и после этого будет установлена переменная $ PATH.
Поэтому я предлагаю вам сначала взглянуть на ваш ~/.profile
файл и исправить его, если это необходимо.