Роль и отличие профиля, bashrc, bash_profile

задняя часть Linux
Роль и отличие профиля, bashrc, bash_profile

Это 8-й день моего участия в августовском испытании обновлений. Проверьте подробности события, проверьте подробности события: Испытание августовского обновления

В системе Linux есть три типа файлов, которые появляются очень часто, то есть файлы профиля, bash_profile и bashrc.

Из-за названий многие путают функции этих трех типов документов, поэтому сегодня мы проведем подробную инвентаризацию функций и различий этих трех типов документов.

1 profile

1.1 Функция

профиль, путь:/etc/profile, используемый для установки переменных среды системного уровня и программ запуска, конфигурация в этом файле будетВсе пользователиэффективный.

Когда пользователь входит в систему, файл выполняется, и/etc/profile.dНайдите настройки оболочки в файле конфигурации каталога.

1.2 Установка переменных среды в профиле

в целомне предлагаетсясуществует/etc/profileДобавьте в файл переменные среды, потому что настройки, добавленные в этот файл, будут работать для всех пользователей.

Когда его необходимо добавить, мы можем добавить его следующим образом:

Например, добавьте значение HOST какjuejin.cnПеременная среды:

export HOST=juejin.cn

При добавлении его можно использовать в конце строки;номер или не используется.

Имя переменной может соответствовать нескольким значениям переменных, и необходимо использовать несколько значений переменных.:разделять.

После добавления переменной среды вам нужно снова войти в систему, чтобы она вступила в силу, или вы можете использовать команду source, чтобы она вступила в силу немедленно:

source /etc/profile

Чтобы увидеть, подействует ли это, вы можете использовать команду echo:

$ echo $HOST
juejin.cn

2 bashrc

Файл bashrc используется для настройки функций или псевдонимов. Существует два уровня файлов bashrc:

  • системный уровень
  • Уровень пользователя

2.1 Системный уровень

на системном уровне/etc/bashrc, который действует для всех пользователей.

2.2 Уровень пользователя

на уровне пользователя~/.bashrc, который действует только для текущего пользователя.

Файл bashrc будет работать только с указанным типом оболочки, а bashrc будет вызываться только оболочкой bash.

3 bash_profile

bash_profileДействителен только для одного пользователя, файл хранится по адресу~/.bash_profile, этот файл является настройкой уровня пользователя, которую можно понимать как каталог профиля определенного пользователя.

Этот файл также можно использовать для настройки переменных среды и запуска программ, но только для одного пользователя.

Подобно файлу профиля, bash_profile также вступает в силу, когда пользователь входит в систему, и также может использоваться для установки переменных среды.

Но в отличие от профиля, bash_profile действует только для текущего пользователя.

4 Обзор различий

Разница между этими тремя типами файлов выражается в одном предложении:

/etc/profile,/etc/bashrc— это системная глобальная переменная среды;

~/.profile,~/.bashrcНастройки частной переменной среды в домашнем каталоге пользователя.

Когда процесс оболочки получен при входе в систему, он считывает файл конфигурации среды следующим образом:

  1. Сначала прочитайте файл конфигурации глобальной переменной среды./etc/profile, а затем прочитать дополнительный набор документов на основе его содержания, например/etc/profile.dи/etc/inputrc;
  2. Согласно разным учетным записям пользователей, читайте в их домашнем каталоге~/.bash_profile;
  3. Если чтение не удалось, оно будет прочитано~/.bash_login;
  4. Если снова не получится, прочтите~/.profile(Три настройки документа в основном одинаковы и имеют приоритет только при чтении);
  5. Наконец, прочитайте в соответствии с учетной записью пользователя~/.bashrc.

Что касается~/.profileи~/.bashrcВсе они имеют функции персонализации, но~/.profileВы можете установить пользовательский путь, переменные среды и т. д., и это может быть выполнено только один раз при входе в систему.

~/.bashrcЭто также пользовательский документ настроек, в котором можно указать путь и псевдоним команды, и он будет использоваться один раз при каждом выполнении сценария оболочки.