it-swarm.com.de

Wie kann ich .bash_profile von der Kommandozeile aus neu laden?

Wie kann ich .bash_profile von der Kommandozeile aus neu laden? Ich kann die Shell dazu bringen, Änderungen an .bash_profile zu erkennen, indem Sie das Programm beenden und erneut anmelden. Ich möchte es jedoch auf Anfrage.

796
markdorison

Geben Sie einfach source ~/.bash_profile ein.

Wenn Sie beispielsweise Tastenkürzel speichern möchten, können Sie . ~/.bash_profile eingeben.

1534
SiegeX
. ~/.bash_profile

Stellen Sie nur sicher, dass Sie keine Abhängigkeiten vom aktuellen Status haben.

88
Carl Norum

Einfach eintippen:

. ~/.bash_profile

Wenn Sie jedoch möchten, dass es automatisch ausgeführt wird, wenn das Terminal gestartet wird, anstatt es bei jedem Öffnen des Terminals auszuführen, können Sie der Datei . ~/.bash_profile~/.bashrc hinzufügen.

Anmerkung:

Wenn Sie ein Terminal öffnen, startet das Terminal die Bash im interaktiven Modus (ohne Anmeldung). Dies bedeutet, dass ~/.bashrc als Quelle dient.

~/.bash_profile wird nur von Bash bezogen, wenn es in interaktiver Anmeldemodus gestartet wird. Dies ist normalerweise nur der Fall, wenn Sie sich an der Konsole anmelden (Ctrl+Alt+F1..F6) oder über ssh verbinden.

28
Mohammad Anini

Sie können diesen Befehl auch verwenden, um das ~/.bash_profile für diesen Benutzer neu zu laden. Stellen Sie sicher, dass Sie den Bindestrich verwenden.

su - username
14
user1003932
  1. Speichern Sie .bash_profile file 
  2. Wechseln Sie zum Benutzerverzeichnis des Benutzers, indem Sie cd eingeben. 
  3. Laden Sie das Profil erneut mit . .bash_profile 
11
Mithun Khatri

Ich mag die Tatsache, dass Sie, nachdem Sie die Datei gerade bearbeitet haben, nur noch Folgendes eingeben:

. !$

Dadurch wird die gerade in der Historie bearbeitete Datei gespeichert. Siehe Was ist Bang Dollar in Bash .

9
hyper_st8

sie müssen nur . ~/.bash_profile eingeben

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

3
Jenil Mewada

Fügen Sie alias bashs="source ~/.bash_profile" in Ihre Bash-Datei ein. Damit können Sie ab dem nächsten Mal bashs aufrufen

3
Shemeer M Ali

wenn das Bash-Profil nicht vorhanden ist, können Sie versuchen, den folgenden Befehl auszuführen:

. ~/.bashrc 

oder

 source ~/.bashrc

anstelle von .bash_profile . Weitere Informationen zu bashrc

2
3p3ch3

Wenn es Ihnen nichts ausmacht, den Verlauf Ihres aktuellen Shell-Terminals zu verlieren, können Sie dies auch tun

bash -l

Das würde Ihre Shell verzweigen und einen weiteren Kindprozess von bash eröffnen. Der -l-Parameter weist bash an, als Login-Shell auszuführen. Dies ist erforderlich, da .bash_profile nicht als Nicht-Login-Shell ausgeführt wird. Weitere Informationen zu diesem finden Sie hier .

Wenn Sie die aktuelle Shell vollständig ersetzen möchten, können Sie auch Folgendes tun:

exec bash -l

Das Obige wird Ihre aktuelle Shell nicht unterteilen, sondern vollständig ersetzen. Wenn Sie exit eingeben, wird sie vollständig beendet, anstatt Sie zur vorherigen Shell zu verschieben.

2
Ulukai

Ich wollte eine schnelle Antwort veröffentlichen, die bei Verwendung von source ~/.bash_profile oder den oben genannten Antworten nur dazu führt, dass Ihr Bash-Profil in der aktuellen Registerkarte oder Sitzung, die Sie gerade anzeigen, neu geladen wird. Wenn Sie Ihr Bash-Profil auf jeder Registerkarte/Shell neu laden möchten, müssen Sie diesen Befehl jeweils manuell eingeben.

Wenn Sie iTerm verwenden, können Sie verwenden CMD⌘+Shift+I um einen Befehl in alle aktuellen Registerkarten einzugeben . Für das Terminal kann es nützlich sein, auf dieses Problem zu verweisen.

2
aug
alias reload!=". ~/.bash_profile"

oder wenn Sie Protokolle über Funktionen hinzufügen möchten

function reload! () {
    echo "Reloading bash profile...!"
    source ~/.bash_profile
    echo "Reloaded!!!"
}
1
7urkm3n

Ich benutze Debian und kann einfach exec bash eingeben, um dies zu erreichen. Ich kann nicht sagen, ob es auf allen anderen Distributionen funktioniert.

1
Cassandra

Ich betreibe Sierra und habe eine Weile daran gearbeitet (alle empfohlenen Lösungen ausprobiert). Ich wurde verwirrt und versuchte schließlich, meinen Computer neu zu starten! Es funktionierte

meine Schlussfolgerung ist, dass manchmal ein Hard Reset erforderlich ist

0
Mike Palmice