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!
Inhaltsverzeichnis
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.
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!
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.
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!