zaLinux.ru

Скрипты, выполняемые при запуске Bash


Скрипты (файлы) запускаемые вместе с Bash используются программой оболочки /bin/bash для создания окружения оболочки. Каждый скрипт имеет специфическое применение и по-разному влияет на рабочее окружение после входа. Каждый последующий выполняемый скрипт может перезаписать значения, присвоенные предыдущими скриптами.

Скриптами, запускаемыми при каждом открытии Bash, являются:

  1. ~/.bashrc
  2. /etc/bashrc
  3. ~/.bash_profile
  4. ~/.bash_login
  5. ~/.profile
  6. /etc/profile
  7. /etc/profile.d/*

1) ~/.bashrc


2) /etc/bashrc

  • Глобальный скрипт запуска.
  • Используется для установки локальных переменных и определения псевдонимов (Aliases) и функций.
  • Вызывается скриптом ~/.bashrc, во время создания как Login shells (оболочек входа), так и Non-Login shells (оболочек без входа).
  • Вызывает скрипты в директории /etc/profile.d/ в случае запуска оболочки без входа (Non-Login shells).

3) ~/.bash_profile

  • Специфичный для пользователя скрипт запуска.
  • Используется для установки переменных рабочего окружения и запуска команд.
  • Вызывается процессом входа во время создания оболочки входа (Login shells).
  • Вызывает скрипт ~/.bashrc.

4) ~/.bash_login

  • Специфичный для пользователя скрипт запуска.
  • Используется для установки переменных рабочего окружения и запуска команд.
  • Во время создании оболочки входа (Login shell) вызывается процессом входа если ~/.bash_profile не представлен.
  • Поддерживается для совместимости с оболочкой C shell и скриптом запуска оболочки Tenex C, ~/.login.

5) ~/.profile

  • Специфичный для пользователя скрипт запуска.
  • Используется для установки переменных рабочего окружения и запуска команд.
  • Во время создании оболочки входа (Login shell) вызывается процессом входа если ~/.bash_profile и в последствии ~/.bash_login не представлены.
  • Поддерживается для совместимости со скриптами запуска Bourne shell и Korn shell, ~/.profile.

6) /etc/profile

  • Глобальный скрипт запуска.
  • Используется для установки переменных рабочего окружения и запуска команд.
  • Во время создании оболочки входа (Login shell) вызывается процессом входа.
  • Вызывает скрипты в директории /etc/profile.d/.

7) /etc/profile.d/*

  • Директория, содержащая глобальные скрипты запуска.
  • Используется для установки переменных рабочего окружения и запуска команд.
  • Вызывается скриптом /etc/profile, во время создания оболочки входа (Login shells).
  • Вызывается скриптом /etc/bashrc, во время создания оболочки без входа (Non-Login shell).

Смотрите также: Различия между Login shell и Non login shell (оболочкой с входом и оболочкой без входа).

Источник: Bash startup scripts.


Рекомендуемые статьи:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *