Unix – .bashrc ne sauve pas

Dans mon fichier ~/.bashrc , j’ai une fonction définie:

 function today { echo "Today's date is:" date +"%A, %B %-d, %Y" } 

mais chaque fois que je démarre la machine, si je le fais

 $ today 

Je reçois:

 -bash: today: command not found 

et puis je dois $ source .bashrc (à chaque terminal) onglet pour activer cette fonction et retourner:

 Today's date is: Thursday, November 2, 2017 

pourquoi .bashrc “oublie” son contenu chaque fois que je redémarre la machine?

EDIT :

j’ai

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

déclaré dans mon ~/.profile

Lire https://www.gnu.org/software/bash/manual/bash.html#Bash-Startup-Files

Votre shell serait un shell de connexion interactif. Dans ce cas, lisez bas votre ~ / .bash_profile ou ~ / .bash_login ou ~ / .profile, selon ce qu’il trouve en premier. Il ne lit pas automatiquement le ~ / .bashrc.

Vous devriez append ceci à votre fichier de profil:

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