Comment puis-je recharger à
.bash_profilepartir de la ligne de commande ?
Je peux faire en sorte que le shell reconnaisse les modifications apportées .bash_profileen quittant et en me reconnectant, mais j'aimerais pouvoir le faire à la demande.
Comment puis-je recharger à
.bash_profilepartir de la ligne de commande ?
Je peux faire en sorte que le shell reconnaisse les modifications apportées .bash_profileen quittant et en me reconnectant, mais j'aimerais pouvoir le faire à la demande.
Réponses:
Tapez simplement source ~/.bash_profile
Alternativement, si vous aimez enregistrer les frappes, vous pouvez taper . ~/.bash_profile
alias reload='source ~/.bash_profile && echo "File .bash_profile reloaded correctly" || echo "Syntax error, could not import the file"';
. ~/.bash_profile
Assurez-vous simplement de ne pas avoir de dépendances sur l'état actuel.
.commande dans ce cas?
. est simplement un alias pour la sourcecommande.
.est plus ancienne que l' sourceest plus .
sourceest une implémentation spécifique à bash de.
.et sourcesont littéralement la même chose dans bash. Du lien: " sourceest un synonyme de point / point ." dans bash, mais pas dans POSIX sh, donc pour une compatibilité maximale, utilisez le point. "
Tapez simplement:
. ~/.bash_profile
Cependant, si vous souhaitez le faire fonctionner automatiquement au démarrage du terminal au lieu de l'exécuter à chaque fois que vous ouvrez le terminal, vous pouvez l'ajouter . ~/.bash_profileau ~/.bashrcfichier.
Remarque:
Lorsque vous ouvrez un terminal, le terminal démarre bash en mode interactif (sans connexion), ce qui signifie qu'il se source ~/.bashrc.
~/.bash_profilen'est fourni par bash qu'au démarrage en mode de connexion interactif . C'est généralement uniquement lorsque vous vous connectez à la console ( Ctrl+ Alt+ F1.. F6) ou lorsque vous vous connectez via ssh.
Vous pouvez également utiliser cette commande pour recharger le ~ / .bash_profile pour cet utilisateur. Assurez-vous d'utiliser le tiret.
su - username
J'aime le fait qu'après avoir édité le fichier, il vous suffit de taper:
. !$
Cela source le fichier que vous venez de modifier dans l'historique. Voir What is bang dollar in bash .
cd . .bash_profile cd. Pas besoin de ~.
cd- vous pouvez simplement le recharger à partir du répertoire dans lequel vous vous trouvez actuellement:. ~/.bash_profile
Si cela ne vous dérange pas de perdre l'historique de votre terminal shell actuel, vous pouvez également le faire
bash -l
Cela bifurquerait votre shell et ouvrirait un autre processus enfant de bash. Le -lparamètre indique à bash de s'exécuter en tant que shell de connexion, ceci est obligatoire car .bash_profile ne s'exécutera pas en tant que shell sans connexion, pour plus d'informations à ce sujet, lisez ici
Si vous souhaitez remplacer complètement le shell actuel, vous pouvez également faire:
exec bash -l
Ce qui précède ne bifurquera pas votre shell actuel mais le remplacera complètement, donc lorsque vous tapez, exitil se terminera complètement, plutôt que de vous déposer dans le shell précédent.
Ajoutez-le alias bashs="source ~/.bash_profile"à votre fichier bash. Vous pouvez donc appeler bashsde la prochaine fois
reset- plus facile à retenir
si le .bash_profile n'existe pas, vous pouvez essayer d'exécuter 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 qui, tout en utilisant source ~/.bash_profileou les réponses mentionnées ci-dessus fonctionne, une chose à mentionner est que cela ne recharge que votre profil bash dans l'onglet ou la session actuelle 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⌘+ Shift+ Ipour entrer une commande dans tous les onglets actuels . Pour le terminal, il peut être utile de référencer ce problème ;
il suffit de taper . ~/.bash_profile
J'utilise Debian et je peux simplement taper exec bashpour y parvenir. Je ne peux pas dire si cela fonctionnera sur toutes les autres distributions.
. .bash_profiledans votre répertoire personnel sur Mac fera l'affaire. Identique à la réponse donnée ci-dessus par 7urkm3n.
alias reload!=". ~/.bash_profile"
ou si vous voulez ajouter des journaux via des fonctions
function reload! () {
echo "Reloading bash profile...!"
source ~/.bash_profile
echo "Reloaded!!!"
}
. ~/. bash_profile nisource ~/.bash_profile
J'exécute Sierra et y travaillais depuis un certain temps (essayant toutes les solutions recommandées). Je suis devenu confus alors j'ai finalement essayé de redémarrer mon ordinateur! Ça a marché
ma conclusion est que parfois une réinitialisation matérielle est nécessaire
alias BASHRELOAD=". ~/.bash_profile". Si vous faites cela souvent, vous pouvez simplement l'aliaser en tant quebr.