So schreiben Sie Bash-Skripte, um Linux zu automatisieren

Bash-Scripting ist eine nützliche Fähigkeit, die man als Linux-Benutzer lernen sollte. Selbst als Anfänger kann das Wissen um diese Fähigkeit den Unterschied ausmachen, ob Sie Ihre Maschine voll ausnutzen oder alles von Hand erledigen. Aus diesem Grund zeigen wir Ihnen in diesem Artikel, wie Sie Bash-Skripte schreiben, um Linux zu automatisieren und die volle Kontrolle über Ihren Desktop zu übernehmen. Wir werden die Grundlagen der Skripterstellung mit der Bash-Shell durchgehen, die Grundlagen dessen, was ein Skript ausmacht, wie man sie auf Ihrem System ausführt, was Shebangs bedeuten und vieles mehr!

Arten von Skripten

Es gibt viele verschiedene Arten von Skripten. Hauptsächlich: SH und BASH. Diese Dateierweiterungen sind wichtig, da die Dateierweiterung dem Interpreter mitteilt, wie er ausgeführt werden soll. Wenn eine Datei eine SH-Datei ist, kann sie in jeder Shell ausgeführt werden, nicht nur in Bash. Dies bedeutet, dass ein für Bash unter Linux geschriebenes Skript auf dem Mac, BSD und anderen Orten mit ähnlichen Shells ausgeführt werden kann.

Skripte, die die BASH-Dateierweiterung verwenden, sind nur für die Ausführung innerhalb von Bash gedacht. Es genügt zu sagen, dass Ihr Skript mit der Bash-Dateierweiterung nicht in der Fish-Shell unter Linux oder einer der anderen ähnlichen verfügbaren Shells ausgeführt werden kann.

Sie knallt

Einige Skripte verwenden überhaupt keine Dateierweiterungen. Stattdessen verwenden sie einen Shebang, damit der Dolmetscher versteht, wofür das Skript dient und wie es ausgeführt wird. Wenn man ein Drehbuch schreibt, steht der Kram IMMER an erster Stelle. Wenn kein Shebang vorhanden ist, weigert sich ein Skript oft, ausgeführt zu werden, insbesondere wenn keine Dateierweiterung verwendet wird.

  So verbessern Sie das Gaming mit Wine unter Linux

Es gibt viel über Shebangs zu lernen, aber Anfänger müssen sich keine Sorgen darüber machen. Sie erweisen sich nur für fortgeschrittene Bash-Benutzer als nützlich, die unglaublich komplexe Bash-Tools schreiben möchten. Als Anfänger müssen Benutzer nur an den Standard denken: #!/bin/bash

Erstellen eines Bash-Skripts

Viele Anfänger verwechseln Bash-Skripte mit eigentlicher Programmierung. Der Hauptzweck der Skripterstellung in Bash besteht darin, viele Befehle aneinanderzureihen und so lange komplizierte Dinge effektiv zu erledigen, ohne dass alles in die Terminal-Shell geschrieben werden muss. Wenn Sie versuchen, ernsthaft in Bash zu programmieren, hören Sie auf und ziehen Sie eine tatsächliche Programmiersprache in Betracht, die unter Linux wie Python verwendet wird.

Öffnen Sie zunächst ein Terminal und geben Sie den folgenden Befehl ein:

nano myfirstbashscript

Dadurch wird der Nano-Texteditor aufgerufen. Fügen Sie innerhalb von nano den Shebang hinzu, um dem Interpreter zu helfen, zu erkennen, was mit dem Skript zu tun ist.

#!/bin/bash

Von hier aus können wir alles tun! Zum Beispiel: Ein Ubuntu-Benutzer kann ein einfaches Update-Skript erstellen, indem er die Zeilen hinzufügt:

sudo apt update;sudo apt upgrade -y

Alternativ ein weiteres Beispiel: Erstellen Sie ein kontinuierliches Ping-Skript, das im Hintergrund ausgeführt wird, wenn Sie sich Sorgen um Ihre Netzwerkgeschwindigkeit machen.

ping google.com

Fügen Sie dem Skript beliebige Befehle hinzu! Werde kreativ!

  So spielen Sie Subnautica unter Linux

Nachdem Sie Ihrem Skript das hinzugefügt haben, was Sie möchten, speichern Sie es mit nano mit STRG + O.

Nachdem das Skript erstellt wurde, ist es an der Zeit, die Berechtigungen zu aktualisieren. Führen Sie in einem Terminal Folgendes aus:

sudo chmod +x myfirstbashscript

Ausführen von Skripten

Um ein Shell-Skript auszuführen, öffnen Sie ein Terminal und tun Sie Folgendes:

sudo sh script.sh

Versuchen Sie Folgendes, um Bash-Dateien auszuführen:

sudo bash script.bash

Alternativ kann jedes Skript unabhängig von der Dateierweiterung problemlos mit ./filename im Terminal ausgeführt werden.

Alle drei Möglichkeiten, Skripte auszuführen, funktionieren sehr gut. Davon abgesehen ist die Verwendung von ./filename der schlechteste Weg, da Skripte oft nicht ausgeführt werden, wenn das Bash-Skript nicht die richtigen Berechtigungen hat. Legen Sie die Berechtigungen fest mit:

sudo chmod +x script

Machen Sie Ihr Skript zu einer Binärdatei

Um Ihr Skript auszuführen, indem Sie einfach den Namen der Datei im Terminal eingeben, müssen Sie es zu einer Binärdatei machen. Verwenden Sie dazu den Befehl chmod, um es ausführbar zu machen.

sudo chmod +x

Wenn das Skript als ausführbar markiert ist, ist es an der Zeit, das Skript so zu verschieben, dass es im Pfad des Benutzers zugänglich ist. Tun Sie dies mit dem MV-Befehl. Verwenden Sie alternativ den CP-Befehl anstelle des Move-Befehls, wenn Sie eine Sicherungskopie Ihres Skripts an seinem ursprünglichen Speicherort aufbewahren möchten.

sudo mv /location/of/script /usr/bin/

oder

sudo cp /location/of/script /usr/bin/

Führen Sie dann das neu verschobene Skript im Terminal aus, von überall aus, indem Sie einfach den Namen im Terminal eingeben. Zum Beispiel: Sie haben YouTube-DL verwendet, um ein automatisches YouTube-Ripping-Skript zu schreiben, und es für einen einfachen Zugriff in /usr/bin/ abgelegt.

  So verwenden Sie Bind-Mounts und Symlinks unter Linux

Um das Skript auszuführen, würden Sie Folgendes tun:

youtubescript

Das ist es!

Fazit

Das Erlernen der Bash-Sprache ist ein nützliches Werkzeug. Ohne sie würden sich Systemadministratoren und Terminalfreaks stundenlang an einem Terminal abrackern. Stattdessen können sie Bash-Skripte schreiben, um Linux zu automatisieren. Indem Sie lernen, die Leistungsfähigkeit von Bash zu nutzen, schreiben Sie all diese komplexen Operationen und führen sie schnell mit einem Skript aus.

Die Shell ist wunderschön, und je mehr Sie darüber lernen, desto mehr werden Sie über ihre eigenen Linux-Systeme lernen, wie man sie automatisiert und sogar die interne Funktionsweise verbessert! Der Himmel ist die Grenze mit Bash, alles, was man braucht, ist ein wenig Kreativität!