Actualiser les variables env après l'édition du fichier bashrc

59

J'ai fréquemment édité le .bashrcfichier pour exporter de nouvelles variables d'environnement.

Plutôt que de fermer la console et d’en créer une nouvelle pour actualiser les variables env, existe-t-il un moyen pratique d’actualiser les données?

xiaohan2012
la source

Réponses:

78

Dans la même fenêtre, vous pouvez simplement taper bashpour en commencer une nouvelle. Cela équivaut à fermer la fenêtre et à en ouvrir une nouvelle.

Alternativement, vous pouvez taper source ~/.bashrcà la source du .bashrcfichier.

n0pe
la source
7
Pas besoin d'exécuter un autre shell. sourceest la bonne façon
Matteo
2
De plus, il n'est pas nécessaire de taper un mot long source. vous pouvez simplement taper point au lieu de celui - ci: . ~/.bashrc.
précipiter
4
@Rush typing sourceindique à l'utilisateur quelle commande est appelée. Je ne crois pas à montrer les commandes en raccourci aux nouveaux utilisateurs jusqu'à ce qu'ils comprennent ce que fait le code.
n0pe
10
notez que le simple sourcing de bashrc n’est pas nécessairement égal à un redémarrage de bash. Les variables définies ne sont pas automatiquement indéfinies. Les options du shell ne sont pas automatiquement désactivées. sourcing bashrc n’exécute que ce qui est écrit dans bashrc. il n'annule aucun autre changement dans l'environnement. démarrer une nouvelle session bash dans l'ancien n'est pas nécessairement égal à un redémarrage de bash, car le nouveau processus hérite de l'environnement de l'ancien.
Lesmana
2
@MaxMackie Considérant la question de savoir comment sourceun bashisme plus long à taper mais qui n'offre aucun avantage par rapport à son portatif sur tous les coques ., je ne vois pas l'intérêt d'encourager quiconque, nouveau ou expérimenté, à l'utiliser.
jw013
21

Juste utiliser

source ~/.bashrc

ou

. ~/.bashrc
Matteo
la source
3

En plus de ce que d'autres ont suggéré, j'ai découvert que sourceles variables d'environnement précédemment assignées ne seraient pas effacées. Donc, si vous voulez supprimer les variables d’environnement, vous devez le faire manuellement.

Lokesh
la source