Wenn ich ein zB eingebe. Ein neuer Alias in meiner .bashrc
Datei Ich kann ihn in diesem Terminalfenster nicht sofort verwenden und bis vor kurzem dachte ich, ich müsse das Terminal neu starten, um die .bashrc
Datei neu zu laden . Dann habe ich irgendwo herausgefunden, dass wenn ich schreibe
. .bashrc
Dadurch wird die .bashrc
Datei im aktuellen Fenster neu geladen und ich muss nicht neu starten. Das funktioniert flossen aber was ist eigentlich los? Warum wird die .bashrc
Datei dadurch neu geladen ?
.
"quellen" Sie die Datei. Das heißt, es wird im Grunde ausgeführtAntworten:
Weil
.
es ein Befehl ist.Es ist ein in die Shell integrierter Befehl, der die angegebene Datei liest und die darin enthaltenen Befehle im aktuellen Shell-Prozess ausführt.
Die Bourne Again-Shell hat
source
auch ein Synonym für diesen Befehl. Dies ist jedoch ein Bashismus (den die Bourne Again-Shell der C-Shell entnommen hat). Obwohl es ein Bashismus ist, den die Bourne Again-Shell mit der TENEX C-Shell, der Z-Shell und anderen (aber nicht der Korn-Shell, Anmerkung) teilt. Die Single UNIX-Spezifikation standardisiert nur.
.Beachten Sie auch, dass sich das Verhalten von
.
/source
geringfügig ändert, je nachdem, ob die Bourne Again-Shell im POSIX-kompatiblen Modus ausgeführt wird oder nicht. (Wiederum ist dies wie bei anderen Shells, obwohl deren nicht standardmäßiges Verhalten nicht dem des anderen entspricht. Bei der Z-Shell gibt es zum Beispiel einen vorkompilierten Shell-Skriptmechanismus, der sichsource
geringfügig von der.
Behandlung des Suchpfads unterscheidet .) Korn Shell.
wird Shell-Funktionen ausführen, für ein anderes Beispiel.)~/.bashrc
ist lediglich eine von mehreren Dateien, deren Inhalt (abhängig davon, wie der Shell-Prozess aufgerufen wird) beim Starten der Shell automatisch bezogen wird . Es gibt nichts, was es verbietet, manuell beschafft zu werden. Wenn seine Aktionen nicht idempotent sind, müssen Sie möglicherweise später einige Korrekturen vornehmen.Weitere Lektüre
quelle
help .
würde dir sagen:Saying
. .bashrc
führt die Datei aus (Quelle).bashrc
, wodurch die an der Datei vorgenommenen Änderungen in der aktuellen Sitzung verfügbar werden.Standardmäßig
~/.bashrc
würde bei der Anmeldung gelesen werden..
ist ein Synonym fürsource
.quelle
Der
.
Befehl entspricht demsource
Befehl, der Ihre.bashrc
Datei ausführt . Dadurch werden alle von Ihnen definierten Aliase und alle anderen Shell-Einstellungen / Variablen zur aktuellen Umgebung hinzugefügt. Vonsource
der Hilfeseite:quelle