Anfängerleitfaden zur Shell-Programmierung unter Linux

Wollten Sie schon immer "Scripting" unter Linux lernen? Machen Sie es sich einfacher als Sie denken. Manchmal sind Skripte (oft als Shell- oder Bash-Skripte bezeichnet) echte Programme mit komplexem Code. Manchmal ist es nur eine lange Liste von Aufgaben, die Benutzer zusammengestellt haben, um Dinge unter Linux schneller und einfacher zu erledigen. Hier ist der beste Anfängerleitfaden für die Shell-Programmierung unter Linux

Anfängerleitfaden zur Shell-Programmierung unter Linux – %categories

In diesem Artikel erfahren Sie, wie es funktioniert Shell-Skript Basic unter Linux. Zuerst lernen Sie die Voraussetzungen und die Gebote und Verbote eines Shell-Skripts kennen, dann erfahren Sie, wie Sie Benutzereingaben über das Skript entgegennehmen und auf dem Terminalbildschirm ausgeben. Sie erfahren, wie einfach die ersten Schritte (und Best Practices) mit der Skripterstellung unter Linux sind.

Warum machst du ein Drehbuch?

Das Erstellen von Skripten unter Linux ist eine sehr nützliche Fähigkeit. Sie können einige sich wiederholende Aufgaben mit Bash-Skripten automatisieren. Wenn Sie es gut machen, kann es Sie sehr produktiv machen und Sie in kürzerer Zeit mehr erreichen lassen.

Zum Beispiel: Möglicherweise haben Sie Arch Linux gerade von Grund auf neu erstellt. Das Betriebssystem wird zusammen mit allen wichtigen Paketen installiert und kann beim Start des Betriebssystems auf das Gerät booten. Das Einrichten von Arch Linux dauert einige Zeit, daher ist der Vorgang nicht abgeschlossen.

An diesem Punkt kann der Benutzer ein Bash-Skript schreiben und alles auf einmal erledigen. Nichts davon ist Programmierung – oder in dieser Hinsicht fortgeschritten. Aufgrund der Tatsache, dass der Benutzer jedoch ausreichend versteht, wie Arch Linux funktioniert, wird er in der Lage sein, fast den gesamten Nachkonfigurationsprozess (Desktop-Umgebung, Treiber, Benutzereinrichtung usw.) zu automatisieren.

Die einzige Einschränkung für Ihr Bash-Programm ist Ihr Wissen über Linux und Bash! Sie zu erstellen ist einfacher als Sie denken.

Anfang

Beim Schreiben von Code müssen Dinge definiert und Ressourcen geladen werden. Auch beim Programmieren mit der Shell müssen einige Dinge angegeben werden. In der Bash-Programmierung wird dies als "Shebang" bezeichnet. Die in Skripten verwendeten Shebangs teilen dem Skript mit, unter welchem ​​Compiler es ausgeführt werden soll. Dies könnte Bash oder ein anderes in Ihrem System verfügbares Skript sein. Beachten Sie, dass verschiedene Sprachen ihre eigenen Sprachen haben.

Lesen Sie auch:  So installieren Sie das Deb-Paket in Arch Linux

Zum Beispiel: beim Schreiben von Text bPython-Sprache , wird das Wort Shebang sein

#!/usr/bin/python

Bash hat viele verschiedene Arten von Shebang, die verwendet werden können, aber die meisten Benutzer haben wahrscheinlich nur gesehen

 #!/bin/bash

Verwenden Sie in der Regel #! /bin/bash, wenn Sie ein einfaches Skript schreiben und nicht planen, es aus Linux zu entfernen. Alle modernen Linux-Distributionen verwenden dieselbe Bash-Version, und die Bash-Shell befindet sich normalerweise am selben Ort.

Ein weiterer Kram, der sich als nützlich erweist, ist

 #!/usr/bin/env bash

Es ist auf Portabilität ausgelegt und sollte verwendet werden, wenn das Skript auf anderen Unix-ähnlichen Betriebssystemen (BSDs, macOS usw.) ausgeführt werden soll.

empfohlene Vorgehensweise

Das Schreiben von Skripten in Bash kann ein komplizierter Prozess sein - wenn der Autor es tut. Meistens sind Skripte nur eine Sammlung verschiedener Operationen. Eine Datei übertragen, etwas herunterladen, Software installieren usw.

  • Denken Sie daran, dass Bash eine Sprache ist, die entwickelt wurde, um Dateien und Prozesse auf einem System zu manipulieren. Wenn Bash Ihren Anforderungen entspricht, ist das in Ordnung. Beachten Sie jedoch, dass Bash für fortgeschrittene Programmierung nicht wirklich die richtige Wahl ist und Sie besser auf etwas wie Python umsteigen sollten.
  • Machen Sie Ihre Skripte „SH“-kompatibel und im „.sh“-Format, wenn Sie die Skripte auf mehr als nur Linux verwenden möchten. Obwohl andere UNIX-ähnliche Betriebssysteme "bash-ähnliche" Shells haben, haben einige überhaupt keine bash, und es ist gut, darauf vorbereitet zu sein.
  • Erfahren Sie mehr über die Bash-Shell und wie sie funktioniert. Es wird Ihnen helfen, Ihre Texte besser zu schreiben.
  • Verwenden Sie immer Shebang und vor allem das Richtige. Es kann den Unterschied zwischen einem guten und einem schlechten Drehbuch ausmachen, das nicht richtig funktioniert.
  • Kommentieren Sie immer jeden Vorgang. In sechs Monaten greifen Sie möglicherweise wieder auf Ihren Text zurück und fragen sich, was das alles bedeutet. Daher ist es wichtig, dass der Text gut dokumentiert und leicht verständlich ist (sowohl für Sie als auch für alle anderen, die ihn möglicherweise sehen).
    Machen Sie Ihren Code lesbar. Selbst wenn Ihr Skript nicht kompliziert ist, sollte es dennoch sinnvoll sein, und es zu erstellen ist einfacher als Sie denken.
  • Testen Sie das Skript auf Fehler, bevor Sie es an andere weitergeben. Lassen Sie nicht zu, dass andere Fehler für Sie testen. Idealerweise sollten Skripte ausgeführt werden, bevor sie zur Verwendung an Benutzer gesendet werden.
Lesen Sie auch:  So übertragen Sie Dateien unter Linux sicher mit SCP

Erstellen Sie ein Skript

Um mit der Skripterstellung zu beginnen, benötigen Sie lediglich einen Texteditor. Jeder einfache Texteditor reicht aus. Es muss nicht kompliziert oder umfassend sein. In diesem Beispiel erstellen wir mit dem Gedit-Editor einen einfachen Begrüßungstext.

Erstellen und öffnen Sie das Skript in Gedit

Erstellen Sie einen Text mit einem Namen „grüße.sh“  Und öffnen Sie es im Gedit-Editor. Dieser erste Teil des Drehbuchs ist, wie bereits erwähnt, der Shebang. Dadurch kann das Skript dem Interpreter mitteilen, was er verwenden soll, um den Code zu verstehen.

#! / Bin / bash

Als nächstes schreiben wir einen Kommentar. Dadurch kann jeder, der das Skript verwendet, verstehen, was der Code tun soll. Kommentare können zu einem Skript hinzugefügt werden, indem Sie das #-Symbol platzieren. Danach wird nichts mehr vom Text erfasst.

# Mein erstes Linux-Skript

Drucken Sie einen einfachen Gruß

Um eine Ausgabe zu drucken, verwenden wir den echo-Befehl in bash. Wenn Sie "Hallo Welt" drucken möchten, sollte es ungefähr so ​​​​aussehen:

Echo "Hallo Welt"

Machen Sie das Skript ausführbar

Um das Skript ausführbar zu machen, verwenden wir den Befehl chmod.

chmod +x Grüße.sh

+x bedeutet, dass die Ausführungsberechtigung zur Skriptdatei hinzugefügt wird. Um das Skript auszuführen, rufen Sie den Skriptnamen mit seinem relativen Pfad auf.

./grüße.sh

Benutzereingaben entgegennehmen

Das Entgegennehmen von Benutzereingaben ist die Kernfunktion eines Bash-Skripts, und Sie müssen das Konzept von Variablen in Bash kennen. Variablen sind wie ein Speicher, in dem Sie Werte speichern können. In diesem Fall speichern wir die Eingabe des Benutzers in einer Bash-Variablen. Um einen Beitrag zu leisten, stellen wir dem Benutzer eine Frage.

echo -e "Wie ist dein Name: "

Wenn ein Benutzer seinen Namen eingibt, können wir die Eingabe mithilfe einer Bash-Variable namens inputname lesen.

echo -e "Wie ist Ihr Name: " Eingabename lesen

Sie können einen beliebigen Variablennamen verwenden, aber stellen Sie sicher, dass Sie den Lesebefehl direkt nach dem Echobefehl hinzufügen.

Drucken Sie eine Willkommensnachricht

Der gespeicherte Benutzername ist die Eingangsname-Variable. Um den Benutzer zu begrüßen, verwenden wir wieder den echo-Befehl.

echo "Guten Morgen $inputname"

Wir verwenden das $-Zeichen, um eine Variable innerhalb eines Strings darzustellen. Speichern Sie das Skript und führen Sie es mit dem Befehl ./greetings.sh aus.

Lesen Sie auch:  So erstellen Sie einen benutzerdefinierten Webbrowser mit Nyxt

Anfängerleitfaden zur Shell-Programmierung unter Linux – %categories

Jetzt können Sie Ihre eigenen Grüße erstellen und sie mit Ihren Freunden teilen.

Dateierweiterungen

Es gibt keinen Unterschied in den Dateierweiterungen für Skripte. Die Benennung einer Datei mit der Dateierweiterung „.sh“ hat keinen großen Einfluss auf die Art und Weise, wie das Programm ausgeführt wird. Ein Bash-Skript ohne Dateiendung - leere Textdateien und alles dazwischen wird weiter ausgeführt, solange die richtigen Befehle und Argumente vorhanden sind.

Obwohl die Bash-Shell Dateierweiterungen ignoriert, bedeutet dies nicht, dass der Skriptautor dies tun sollte. Einige Desktop-Umgebungen, die es Ihnen ermöglichen, Shell-Skripts so einzustellen, dass sie beim Start ausgeführt werden, verlassen sich darauf, dass das Skript die richtige „.sh“-Dateierweiterung hat. Dies hilft auch bei der Organisation.

Im Grunde genommen werden die meisten Shell-Skripte aus Gründen der Portabilität als „.sh“-Dateien gespeichert. "sh" hat nichts mit Bash selbst zu tun, und das Skript kann mit jeder kompatiblen Shell ausgeführt werden.

Alternativ können Skripte als .bash, .ksh (Unix-Korn-Shell) usw. gespeichert werden. Diese Dateierweiterungen sind minderwertig und schränken die Nützlichkeit des Skripts wirklich ein. Dies liegt daran, dass es nur für Shells entwickelt wurde, die diese Erweiterungen verwenden.

Häufig gestellte Fragen

F 1. Ist Bash-Scripting leicht zu erlernen?
Antworten. Wenn Sie mit Programmiersprachen vertraut sind, erscheint die Bash-Programmierung ziemlich einfach. Es teilt die gleichen Programmierkonzepte wie Variablen, Schleifen usw., aber wenn Sie nichts über Programmierung wissen, würde ich Ihnen empfehlen, mit Python zu beginnen. Python ist sehr einfach zu erlernen und Sie können damit auch Skripte erstellen.

F2: Lohnt es sich, Bash zu lernen?
Antworten. Wenn Sie täglich Linux fahren oder Linux in Ihrer Arbeitsumgebung verwenden, müssen Sie Bash-Skripting lernen. Sie können auch bash lernen, um Ihre tägliche Aufgabe zu automatisieren. Abgesehen davon sehe ich keine Verwendung für Bash in der Softwareentwicklungsbranche.

F3: Wie kann ich Bash-Scripting in Windows lernen?
Antworten. Es gibt keine native Möglichkeit, Bash in Windows zu lernen, aber Sie können das Windows-Subsystem für Linux (WSL) zum Ausführen verwenden Linux-Distribution auf Ihrem Windows-Rechner und verwenden Sie es, um Bash-Befehle auszuführen.

Sie können auch mögen