Яка різниця між .bashrc та /etc/bash.bashrc?


14

.bashrc та / etc / bashrc

Яка різниця між /etc/bash.bashrcі ~/.bashrc?


1
Я /etc/bashrcніде не бачу .
mikew незалежно від

2
Дивіться розділ Manh на сторінці "FILES".
Кіра

1
@mikewwhat, ви можете знайти /etc/bash.bashrc.
Iliyas Mansons

@Cyrus Я перевірив розділ "ФАЙЛИ", і "bash.bashrc" не відображається там, з'являється лише "~ / .bashrc". Чи можете ви надати посилання на сторінку чоловіка, яку ви переглядали? Я дивився Сторінку чоловіка Баша
WinEunuuchs2Unix

1
@Cyrus, я знайшов відповідь за посиланням, яким ви поділилися!
Iliyas Mansons

Відповіді:


24

Коли bash ініціалізує інтерактивну оболонку bash на Debian / Ubuntu-подібній системі, оболонка спочатку зчитує, /etc/bash.bashrcа потім читає ~/.bashrc.

Причина, /etc/bash.bashrcяка не з'являється у звичайній документації bash (наприклад, тут чи тут ), полягає в тому, що це функція, яку додає Debian та прийнята Ubuntu. Як пояснює Debian ( readme.debian ):

  1. Що таке /etc/bash.bashrc? Це не здається документально зафіксованим.

    Версія Debian bash складена зі спеціальним параметром ( -DSYS_BASHRC), який змушує bash читати /etc/bash.bashrcраніше ~/.bashrc для інтерактивних оболонок без входу. Отже, на системах Debian /etc/bash.bashrc- це ~/.bashrcяк /etc/profileслід ~/.bash_profile.

Таким чином, /etc/bash.bashrcце задокументовано на підручних сторінках Debian та Ubuntu, але не на сторінках man з інших дистрибутивів, які не підтримують цю функцію.


1
Варто зазначити, що використання розповсюджується. Git bash, заснований на MSYS2, також має цю умову. Здається, прийнято встановити адаптації / конфігурації / стандарти системного рівня.
BenPen

4

Файл ініціалізації в масштабах усієї системи /etc/bash.bashrc та стандартний персональний файл ініціалізації, ~/.bashrc якщо оболонка інтерактивна.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.