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?

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.


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


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.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.