Linux: Der Versuch, Out Einfache Shell-Skripten

Wenn Sie kein Programmierer sind, können Sie besorgt über die Programmierung fühlen. Aber Schale Scripting (Oder Programmierung) in Linux kann so einfach sein wie ein paar Befehle in einer Datei zu speichern. In der Tat können Sie eine nützliche Shell-Programm, das mit einem einzigen Befehl hat.

Shell-Skripte sind unter Systemadministratoren beliebt. Wenn Sie ein Systemadministrator sind, können Sie eine Sammlung von benutzerdefinierten Shell-Skripte erstellen, die Sie Aufgaben, die Sie häufig ausführen automatisieren. Wenn eine Festplatte zu sein scheint voll wird, zum Beispiel, können Sie alle Dateien zu finden, die eine gewisse Größe überschreiten (etwa 1 MB) und die nicht in den letzten 30 Tagen zugegriffen haben.

Darüber hinaus können Sie eine E-Mail-Nachricht an alle Benutzer, die große Dateien zu senden haben, verlangt, dass sie zu archivieren und diese Dateien bereinigen. Sie können alle diese Aufgaben mit einem Shell-Skript ausführen. Sie könnten mit der folgenden beginnen finden Befehl, um große Dateien zu identifizieren:

find / -type f -atime +30 -Größe + 1000k exec ls -l {} -> / tmp / large

Dieser Befehl erstellt eine Datei mit dem Namen / Tmp / large, die enthält detaillierte Informationen über die alten Dateien, die zu viel Platz in Anspruch. Nachdem Sie eine Liste der Dateien zu erhalten, können Sie ein paar andere Linux-Befehle - wie zum Beispiel Sortieren, schneiden, und sed - zur Vorbereitung und E-Mail-Nachrichten an Benutzer, die zu bereinigen senden große Dateien.

Anstatt manuell alle diese Befehle eingeben, legen Sie sie in einer Datei und ein Shell-Skript erstellen. Das, auf den Punkt gebracht, ist die Essenz von Shell-Skripten - Shell-Befehle in einer Datei zu sammeln, so dass Sie leicht wiederholende Systemverwaltungsaufgaben durchführen können.

heftiger schlag Skripte, wie die meisten Linux-Befehle, Befehlszeilenoptionen übernehmen. Innerhalb des Skripts können Sie auf die Optionen beziehen sich $ 1, $ 2, und so weiter. Der besondere Name $ 0 bezieht sich auf den Namen des Skripts selbst.

Hier ist ein typisches heftiger schlag Skript, das Argumente akzeptiert:

#! / Bin / shecho "Der Name dieser Schrift ist: $ 0" echo Argument 1: $ 1echo Argument 2: $ 2

Die erste Zeile läuft die / Bin / sh Programm, das anschließend den Rest der Zeilen in dem Skript verarbeitet. Der Name / Bin / sh Traditionell bezieht sich auf die Bourne-Shell - die erste Unix-Shell. In den meisten Linux-Systemen / Bin / sh ist ein symbolischer Link auf / Bin / bash, welches ist das ausführbare Programm für heftiger schlag.

Speichern Sie diese einfachen Skript in einer Datei mit dem Namen einfach und machen, dass eine ausführbare Datei mit dem folgenden Befehl:

chmod + x einfach

Nun führen Sie das Skript wie folgt:

./einfach

Es zeigt die folgende Ausgabe:

Dieses Skript ist der Name: ./simpleArgument 1: Argument 2:

Die erste Zeile zeigt den Namen des Skripts. Da Sie das Skript ohne Argumente ausgeführt haben, zeigt das Skript keine Werte für die Argumente.

Nun versuchen Sie das Skript mit ein paar Argumente ausgeführt wird, wie folgt aus:

./ Simple "Das ist ein Argument der" zweiten Argument dritte

Dieses Mal zeigt das Skript mehr Leistung:

Dieses Skript ist der Name: ./simpleArgument 1: Dies ist ein argumentArgument 2: Second-Argument

Wie die Ausgabe zeigt, behandelt die Shell die gesamte Zeichenfolge innerhalb der doppelten Anführungszeichen als ein einziges Argument. Andernfalls wird die Schale verwendet Räume als Trennzeichen zwischen Argumenten in der Befehlszeile.

Dieses Beispielskript ignoriert das dritte Argument, da das Skript nur die ersten beiden Argumente zu drucken ausgelegt ist.

Menü