Was ist der Unterschied zwischen Beschaffung und Ausführung eines Shell -Skripts
Um den Unterschied zwischen beiden zu verstehen, wie man zuerst ein solides Wissen für die Verwendung der beiden Methoden haben muss
Beschaffung eines Shell -Skripts
Das Beschaffung eines Shell -Skripts ist eine Möglichkeit, ein Skript in der aktuellen Shell -Umgebung auszuführen. Alle Befehle eines Skripts werden ausgeführt, wenn sie direkt in die Befehlszeilenschnittstelle eingegeben werden, und die Beschaffung eines Skripts tut dasselbe. Aus diesem Grund bietet es eine Option für das Skript, um die Umgebungsvariablen zu ändern und Shell -Optionen in der aktuellen Shell festzulegen.
Für weitere Abbildungen habe ich eine Testdatei für das Bash -Skript erstellt und es dann ausgeführt. Hier ist der Code für die von mir erstellte Bash -Datei:
# Bashfile.Sch
Exportieren Sie my_info = "Hallo LinuxHint"
Hier habe ich eine Umgebungsvariable erstellt, die my_info ist, die hat Hallo Linuxhint darin gespeichert und dann mit der angegebenen Syntax ausgeführt:
.
Seit ich eine Datei namens Bashfile erstellt habe.SH, also habe ich die obige Syntax wie folgt verwendet:
. Bashfile.Sch
Sobald die Datei ausgeführt wurde, habe ich die Umgebungsvariable aufgerufen, um zu sehen, was darauf gespeichert ist, und sie gibt einen in IT gespeicherten Wert zurück, was deutlich zeigt, dass sich Änderungen der Umgebungsvariablen in der aktuellen Shell bestehen:
Ausführung eines Shell -Skripts
Das Ausführen eines Shell -Skripts ist eine Möglichkeit, ein Skript in einer separaten Shell auszuführen. Wenn ein Skript ausgeführt wird, wird eine neue Shell erstellt, das Skript wird in dieser Shell ausgeführt, und die Shell endet, wenn das Skript fertig ist. Dies zeigt, dass Änderungen an den Umgebungsvariablen oder Shell -Optionen im Skript nicht nach Abschluss des Skripts bestehen bleiben. Für weitere Abbildungen habe ich eine Testdatei für das Bash -Skript erstellt und es dann ausgeführt. Hier ist der Code für die von mir erstellte Bash -Datei:
# Bashfile.Sch
Exportieren Sie my_info = "Hallo LinuxHint"
Hier habe ich gerade eine Umgebungsvariable erstellt, die my_info ist, die hat Hallo Linuxhint darin gespeichert und dann mit der angegebenen Syntax ausgeführt:
./
Seit ich eine Datei namens Bashfile erstellt habe.SH, also habe ich die obige Syntax wie folgt verwendet:
./Bashfile.Sch
Sobald die Datei ausgeführt wurde, habe ich die Umgebungsvariable aufgerufen, um zu sehen, was darauf gespeichert ist, und sie gibt einen Leerzeichen zurück, der deutlich zeigt, dass Änderungen an den Umgebungsvariablen oder Shell -Optionen im Skript nach Abschluss des Skripts nicht bestehen bleiben:
Um den Unterschied dort weiter zu veranschaulichen. Die nachstehend angegebene Tabelle ist einige der wichtigsten Unterschiede zwischen Beschaffung und Ausführung einer Datei:
Faktoren | Ausführung eines Shell -Skripts | Beschaffung eines Shell -Skripts |
Aliase und Funktionen | Aliase und Funktionen bestehen nur in der Hülle des Skripts. | Aliase und Funktionen bestehen in der aktuellen Hülle bestehen. |
Umfeld | Änderungen der Umgebungsvariablen bestehen nur in der Shell des Skripts. | Änderungen der Umgebungsvariablen bestehen in der aktuellen Hülle bestehen. |
Syntax | ./Skriptname.sh oder bash script name name.Sch | . Skriptname.SH- oder Quell-Skriptname.Sch |
Hauptnutzung | Führen Sie ein in sich geschlossenes Skript aus, ohne die aktuelle Shell zu beeinflussen. | Richten Sie die Umgebungsvariablen oder Aliase für die Schale ein |
Abschluss
Es gibt zwei Möglichkeiten, das Bash -Skript auszuführen. Einer wird durch die Beschaffung und die andere durchführen, indem beide Möglichkeiten ausführen, wie die Möglichkeiten ihre eigene Bedeutung haben. Der Hauptunterschied zwischen beiden besteht darin, dass die Beschaffung der Skriptdatei die Änderungen an den Umgebungsvariablen in der aktuellen Shell hält, während die Ausführung des Skripts die Änderungen beibehält.A