Was ist der Unterschied zwischen .bashrc und /etc/bash.bashrc?

14

.bashrc und / etc / bashrc

Was ist der Unterschied zwischen /etc/bash.bashrcund ~/.bashrc?

Iliyas Mansons
quelle
Ich sehe /etc/bashrcnirgendwo
Mikewhatever
2
Siehe bashs Manpage-Abschnitt FILES.
Cyrus
1
@mikewhatever, du findest /etc/bash.bashrc.
Iliyas Mansons
@ Cyrus Ich habe den Abschnitt FILES der Manpage überprüft und "bash.bashrc" wird dort nicht angezeigt, sondern nur "~ / .bashrc". Könnten Sie einen Link zu der Manpage bereitstellen, die Sie sich angesehen haben? Ich schaute auf Bash Man Page
WinEunuuchs2Unix
1
@ Cyrus, ich habe die Antwort über den Link gefunden, den du geteilt hast!
Iliyas Mansons

Antworten:

24

Wenn bash eine interaktive bash-Shell ohne Anmeldung auf einem Debian / Ubuntu-ähnlichen System initialisiert, liest die Shell zuerst /etc/bash.bashrcund dann ~/.bashrc.

Der Grund, /etc/bash.bashrcder nicht in der normalen Bash-Dokumentation (wie hier oder hier ) erscheint, ist, dass es sich um eine Funktion handelt, die von Debian hinzugefügt und von Ubuntu übernommen wurde. Wie Debian es erklärt ( readme.debian ):

  1. Was ist /etc/bash.bashrc? Es scheint nicht dokumentiert zu sein.

    Die Debian-Version von bash ist mit einer speziellen Option ( -DSYS_BASHRC) kompiliert, mit der bash /etc/bash.bashrczuvor ~/.bashrc für interaktive Shells ohne Anmeldung gelesen werden kann . Also ist auf Debian-Systemen /etc/bash.bashrczu ~/.bashrcwie /etc/profilezu ~/.bash_profile.

Daher /etc/bash.bashrcist dies in den Debian- und Ubuntu-Manpages dokumentiert, jedoch nicht in Manpages anderer Distributionen, die diese Funktion nicht unterstützen.

John1024
quelle
1
Es ist erwähnenswert, dass sich die Nutzung ausbreitet. Git Bash, basierend auf MSYS2, hat auch diese Konvention. Es scheint übernommen zu werden, um Anpassungen / Konfigurationen / Standards auf Systemebene festzulegen.
BenPen
4

Systemweite Initialisierungsdatei /etc/bash.bashrc und die standardmäßige persönliche Initialisierungsdatei, ~/.bashrc wenn die Shell interaktiv ist.

Iliyas Mansons
quelle