J'ai quelques trucs que je veux exécuter dans .bashrc que je préférerais exister dans un autre fichier du système. Comment puis-je inclure ce fichier dans .bashrc?
Ajouter source /whatever/file
(ou . /whatever/file
) dans .bashrc
où vous souhaitez inclure l'autre fichier.
Pour éviter les erreurs, vous devez d'abord vérifier que le fichier existe. Puis sourcez le fichier. Faites quelque chose comme ça.
# include .bashrc if it exists
if [ -f $HOME/.bashrc_aliases ]; then
. $HOME/.bashrc_aliases
fi
Si vous souhaitez charger plusieurs fichiers qui peuvent ou non exister, vous pouvez les garder quelque peu élégants en utilisant une boucle for.
files=(somefile1 somefile2)
path="$HOME/path/to/dir/containing/files/"
for file in ${files[@]}
do
file_to_load=$path$file
if [ -f "$file_to_load" ];
then
. $file_to_load
echo "loaded $file_to_load"
fi
done
La sortie ressemblerait à:
$ . ~/.bashrc
loaded $HOME/path/to/dir/containing/files/somefile1
loaded $HOME/path/to/dir/containing/files/somefile2
Je préfère d'abord vérifier la version et attribuer une variable pour la configuration du chemin:
if [ -n "${BASH_VERSION}" ]; then
filepath="${HOME}/ls_colors/monokai.sh"
if [ -f "$filepath" ]; then
source "$filepath"
fi
fi