Question

Comment puis-je recharger .bash_profile de la ligne de commande? Je peux obtenir le shell de reconnaître les changements à .bash_profile en sortant et connectez-vous mais je voudrais être en mesure de le faire à la demande.

Était-ce utile?

La solution

Il suffit de taper source ~/.bash_profile

Par ailleurs, si vous voulez sauver les frappes vous pouvez taper . ~/.bash_profile

Autres conseils

. ~/.bash_profile

Assurez-vous que vous ne disposez pas de dépendances sur l'état actuel là-dedans.

Il suffit de taper:

. ~/.bash_profile

Cependant, si vous voulez le source pour exécuter automatiquement lorsque le terminal démarre au lieu de l'exécuter chaque fois que vous borne ouverte, vous pouvez ajouter . ~/.bash_profile au fichier ~/.bashrc.

Remarque:

Lorsque vous ouvrez un terminal, le terminal commence bash (non-login) mode interactif, ce qui signifie qu'il la source ~/.bashrc.

~/.bash_profile n'est fourni par bash lors du démarrage mode de connexion interactif . C'est généralement que lorsque vous vous connectez à la console ( Ctrl + Alt + F1 .. F6 ), ou la connexion via ssh.

Vous pouvez également utiliser cette commande pour recharger le ~ / .bash_profile pour cet utilisateur. Assurez-vous d'utiliser le tableau de bord.

su - username

J'aime le fait qu'après que vous venez d'éditer le fichier, tout ce que vous devez faire est de taper:

. !$

sources le fichier que vous venez d'éditer avait dans l'histoire. Voir Qu'est-ce que est le dollar bang dans bash .

  1. Enregistrer .bash_profile fichier
  2. le répertoire personnel de l'utilisateur Aller en tapant cd
  3. Recharger le profil avec . .bash_profile

Si cela ne vous dérange pas de perdre l'histoire de votre terminal shell actuel, vous pouvez également faire

bash -l

Ce serait la fourche shell et d'ouvrir un autre processus enfant de bash. Le paramètre -l indique bash pour fonctionner comme un shell de connexion, cela est nécessaire parce que .bash_profile ne fonctionnera pas comme une coquille non-connexion, pour plus d'informations sur cette lire ici

Si vous voulez remplacer complètement le shell en cours, vous pouvez également faire:

exec bash -l

Le ci-dessus ne bifurque pas votre shell en cours, mais le remplacer complètement, de sorte que lorsque vous tapez exit il mettra fin complètement, plutôt que de vous laisser tomber à la coquille précédente.

Ajouter alias bashs="source ~/.bash_profile" à votre fichier bash. Vous pouvez donc appeler bashs de temps suivant

il vous suffit de taper . ~/.bash_profile

consulter: https://superuser.com/questions/46139/what-does-source-do

si le .bash_profile ne vous pouvez essayer existe pas exécutez la commande suivante:

. ~/.bashrc 

ou

 source ~/.bashrc

au lieu de .bash_profile. Vous pouvez trouver plus d'informations sur bashrc

Je voulais poster une réponse rapide que lors de l'utilisation source ~/.bash_profile ou les réponses mentionnées ci-dessus fonctionne, une chose à mentionner est que cela n'Actualise profil bash dans l'onglet en cours ou de la session que vous consultez. Si vous souhaitez recharger votre profil bash sur chaque onglet / shell, vous devez entrer cette commande manuellement dans chacun d'eux.

Si vous utilisez iTerm, vous pouvez utiliser CMD⌘ + Maj + I pour entrer une commande dans tous les onglets en cours . Pour le terminal, il peut être utile de faire référence à cette problème;

J'utilise Debian et je peux simplement taper exec bash pour y parvenir. Je ne peux pas dire si cela va fonctionner sur toutes les autres distributions.

Je courais Sierra, et je travaille sur ce pendant un certain temps (essayer toutes les solutions recommandées). Je suis devenu confus donc finalement essayé de redémarrer mon ordinateur! Il a travaillé

ma conclusion est que, parfois, un redémarrage est nécessaire

alias reload!=". ~/.bash_profile"

ou si voulez ajouter des journaux via des fonctions

function reload! () {
    echo "Reloading bash profile...!"
    source ~/.bash_profile
    echo "Reloaded!!!"
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top