Lorsque bash initialise un shell bash interactif sans connexion sur un système du type Debian/Ubuntu, le shell lit d'abord /etc/bash.bashrc
, puis ~/.bashrc
.
La raison pour laquelle /etc/bash.bashrc
n'apparaît pas dans la documentation bash normale (telle que ici ou ici ) est qu'il s'agit d'une fonctionnalité ajoutée par Debian et adoptée par Ubuntu. Comme l'explique Debian ( readme.debian ):
Qu'est-ce que /etc/bash.bashrc? Cela ne semble pas être documenté.
La version Debian de bash est compilée avec une option spéciale (
-DSYS_BASHRC
) qui permet à bash de lire/etc/bash.bashrc
avant~/.bashrc
pour les shells interactifs autres que la connexion. Ainsi, sur les systèmes Debian,/etc/bash.bashrc
est sur~/.bashrc
car/etc/profile
est sur~/.bash_profile
.
Ainsi, /etc/bash.bashrc
est documenté dans les pages de manuel Debian et Ubuntu, mais pas dans les pages de manuel d’autres distributions qui ne prennent pas en charge cette fonctionnalité.
Fichier d'initialisation système /etc/bash.bashrc
et le fichier d'initialisation personnel standard ~/.bashrc
si le shell est interactif.