Linux ist ein leistungsstarkes und flexibles Betriebssystem, das viele integrierte Shell-Befehle bietet, mit denen wir das Verhalten des Systems einfach verwalten und steuern können. Ein sehr nützlicher Befehl ist source, der es uns ermöglicht, Befehle aus einer Datei zu lesen und auszuführen, ohne einen neuen Prozess oder eine neue Umgebung zu erstellen. Was macht der Quellbefehl? Wie wird es benutzt? Wie unterscheidet es sich von Bash-Befehlen? In diesem Artikel werden Sie ausführlich in die Geheimnisse des Quellbefehls eingeführt, sodass Sie die Superleistung von Linux nutzen können.
Über den Quellbefehl und seine Ausführungsmethode: In Linux-Systemen ist Quelle ein integrierter Shell-Befehl, der den Inhalt der Datei in der aktuellen Shell liest und ausführt. Diese Dateien enthalten normalerweise eine Reihe von Befehlen, die vom TCL-Interpreter gelesen und ausgeführt werden müssen.
Wenn Argumente angegeben werden, werden diese zu Positionsargumenten für [Dateiname], die von der Quelle ausgeführt werden. Ansonsten bleiben die Positionsparameter unverändert.
Der Eintrag in $PATH wird verwendet, um das Verzeichnis zu finden, das [Dateiname] enthält. Wenn die Datei jedoch nicht in $PATH vorhanden ist, wird im aktuellen Verzeichnis nach der Datei gesucht. Der Quellbefehl hat keine Optionen und die Parameter können nur Dateinamen sein.
Grammatik:
source [filename] [arguments]
Unter ihnen:
[Dateiname]: Der Name oder Pfad der Datei, die vom Quellbefehl ausgeführt werden soll.
[Argumente]: Wenn die Datei ausgeführt wird, werden alle von Ihnen angegebenen Argumente zu Positionsargumenten.
DasPunktzeichen (Punkt) kann anstelle des Quellbefehls verwendet werden und erzeugt dieselbe Ausgabe:
. [filename] [arguments]
Beispiel:
Erstellen Sie eine Datei mit dem Namen linuxmi.txt und fügen Sie die folgenden Befehle hinein.
echo “Hello Linux迷 www.linuxmi.com” pwd date echo $PATH
Führen Sie nun den Quellbefehl unter Verwendung des richtigen Pfads zu der soeben erstellten Datei aus. Stellen Sie sicher, dass Sie den richtigen Dateipfad verwenden.
Quelle linuxmi.txt
Der obige Quellbefehl liest die Befehle in der bereitgestellten Datei und führt sie aus.
Die Ausgabe ist wie folgt:
Wichtig: Seien Sie vorsichtig! „./“ und „source“ sind nicht genau dasselbe.
„./script“ führt das Skript als ausführbare Datei aus und startet eine neue Shell, um es auszuführen. „Quellskript“ liest die Befehle in der Datei aus der aktuellen Shell-Umgebung und führt sie aus. Hinweis: „./script“ ist nicht gleich „.script“, aber „.script“ ist gleich „Quellskript“.
Mit Hilfe des Quellbefehls können wir eine Konfigurationsdatei erstellen und diese in eine andere Datei einlesen.
Grundsätzlich müssen wir zwei Dateien erstellen:
sample-config.sh → Enthält einige zufällige Konfigurationen
config-reader.sh → Lesen Sie die Konfigurationsdatei und führen Sie einige Vorgänge aus.
Erstellen Sie diese Dateien im selben Verzeichnis.
Erstellen Sie „sample-config.sh“ und fügen Sie die folgenden Befehle hinzu:
profile_page="https://www.linuxmi.com/" article_list="https://linux.linuxmi.com/"
Erstellen Sie config-reader.sh und fügen Sie die folgenden Befehle hinzu:
#!/usr/bin/env bash source sample-config.sh echo "*****************************" echo "Profile Page : $profile_page" echo " List of Articles : $article_list" echo "*****************************"
Die Datei config-reader.sh enthält einen Quellbefehl, der die Konfigurationsdatei verwendet. In nachfolgenden Befehlen wird die Dateivariable aus der Datei config-reader.sh verwendet.
Ausgabe:
Führen Sie den folgenden Befehl aus, um die Konfigurationen zu lesen und sie in der aktuellen Dateiquelle config-reader.sh zu verwenden
Wie unten gezeigt:
Manchmal möchten wir einen Alias für einen häufig verwendeten Befehl festlegen, um die Verwendung in jeder Shell-Sitzung zu vereinfachen.
Wir können damit beginnen, einen Shell-Alias-Befehl wie diesen zu erstellen:
alias ll=’ls -ltrh’
Dieser Befehl listet alle Dateien und Ordner im aktuellen Verzeichnis im Langformat auf, sortiert nach Zeitstempel in aufsteigender Reihenfolge und zeigt sie in einem leicht lesbaren Format an.
Eigentlich gibt es ein Problem mit dem aktuellen Befehl. Er läuft innerhalb der aktuellen Shell-Sitzung einwandfrei, aber wir können außerhalb der aktuellen Shell-Sitzung nicht darauf zugreifen.
Wir haben jedoch eine Lösung, um es zu einem permanenten Befehl zu machen, sodass in jeder Shell-Sitzung darauf zugegriffen werden kann.
Wir müssen diesen Alias nur zur .bashrc-Datei (oder .zsh für macOS) hinzufügen, die sich im Home-Verzeichnis befindet.
sudo vim ~/.bashrc
Fügen Sie im Abschnitt „#einige weitere ls-Aliase“ Folgendes hinzu:
alias ll = 'ls -ltrh'
我已经添加了类似的内容如下:
alias ll = 'ls -ltrh' alias g = 'git' alias k = 'kubectl'
添加别名后,我们需要刷新当前的Shell环境,以便测试它是否按预期工作。
source ~/.bashrc
通过本文,你应该对 source 命令有了更深入的了解,知道了它如何从文件中读取并执行命令,如何更新 bash shell 环境,以及它与 bash 命令的区别。source 命令是一个非常方便的内置 shell 命令,它可以让我们在同一个 shell 环境中修改变量或执行脚本,而不需要创建新的进程或环境。这样可以节省资源,提高效率,也可以避免一些潜在的错误或冲突。source 命令是 Linux 中的神奇命令之一,值得我们好好学习和使用。
Das obige ist der detaillierte Inhalt vonDer magische Befehl unter Linux: Quelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!