bashrc ne se charge pas tant que la commande run bash n’est pas exécutée

Je cours Arch Linux fraîchement installé. Lorsque je me connecte à un utilisateur (exécutant bash) et que j’essaie d’utiliser un alias de .bashrc, cela me donne l’erreur “commande introuvable”. Mais si je rentre à bash via la commande ‘bash’, la commande fonctionne correctement.

Oui, je suis déjà en bash.

env au départ:

SHELL=/usr/bin/bash 

env après avoir lancé bash, il rest:

 SHELL=/usr/bin/bash 

Je ne suis donc pas tout à fait sûr du problème.

Lisez la section INVOCATION dans “bash (1)” pour plus de détails (c’est la page de manuel de bash; utilisez man bash ). Lors de la connexion, votre premier shell est un “shell de connexion”, ce qui signifie que le fichier .bashrc n’est pas source. Votre deuxième appel crée un shell interactif, d’où provient .bashrc .

Si vous voulez toujours que le contenu de votre fichier .bashrc traité, vous pouvez append les lignes suivantes à votre fichier .bash_profile , en créant ce fichier s’il n’existe pas déjà:

 if [ -f ~/.bashrc ]; then . ~/.bashrc fi 

Par sa page de manuel, bash “recherche ~/.bash_profile , ~/.bash_login et ~/.profile , dans cet ordre, et lit et exécute les commandes du premier qui existe et est lisible”. Les conventions et les règles de votre système local détermineront, le cas échéant, si ces fichiers existent déjà.

Un mot d’avertissement: sachez que la création d’un nouveau .bash_profile dans votre répertoire personnel pourrait avoir pour effet indésirable d’empêcher la lecture et l’exécution de commandes dans un fichier .bash_login ou .bash_login déjà présent, modifiant encore le comportement des connexions suivantes. .

Avez-vous examiné vos ~/.profile ~/.bash_login , ~/.bash_login et ~/.bash_profile ?