Linux-Anleitung: Erstes Shell Script schreiben zur Systemaktualisierung (Ubuntu)
Die Shell unter Linux schreckt viele Nutzer aufgrund der komplexen Befehle ab. Dabei hat die Shell eine klasse Eigenschaft: Sie lässt sich mit Shellscript auch programmieren und das relativ einfach und so lassen sich u.a. oft benutzte Arbeitsabläufe durch die Eingabe eines…
Die Shell unter Linux schreckt viele Nutzer aufgrund der komplexen Befehle ab. Dabei hat die Shell eine klasse Eigenschaft: Sie lässt sich mit Shellscript auch programmieren und das relativ einfach und so lassen sich u.a. oft benutzte Arbeitsabläufe durch die Eingabe eines einzelnen Kommandos vereinfachen.
Ein Shellscript besteht dabei lediglich aus einer einfachen Textdatei, in der die auszuführenden Kommandos aufgeführt sind. Man kann diese Textdatei so einrichten, dass sie wie ein eigenes Programm reagiert und die darin enthaltenen Kommandos nacheinander abarbeitet.
Wie man - als blutiger Anfänger - sein eigenes erstes Shell Script schreibt zeigen wir in dieser Anleitung, die auf allen gängigen Linux-Systemen wie Debian, Ubuntu, Kali etc. funktioniert.
Vorbereitung des Linux-Systems
Bevor man sein erstes Shellscript erstellen kann, macht es Sinn einige Einstellungen im Linux-Betriebssystem zu überprüfen.
Idealerweise speichert man seine eigenen Shell Skripte im Pfad /usr/local/bin ab, um sie universell systemweit verfügbar zu machen.
Bei den meisten Linux Distributionen existiert der Pfad bereits - gelegentlich kommt es vor, dass das bin-Verzeichnis noch angelegt werden muss (z.B. unter Kali Linux).
Um das rauszufinden wechselt man als erstes in /usr/local mit folgendem Befehl:
cd /usr/local
und lässt sich dort mit
ls
den Inhalt des Verzeichnisses anzeigen.
Sofern kein bin-Ordner enthalten ist, legt man ihn mit folgendem Befehl an:
sudo mkdir bin
Nun muss man noch prüfen, ob der Ordner auch als Pfad angelegt ist, aus dem heraus man das Shellscript universell ausführen kann:
echo $PATH
Die Ausgabe auf den Befehl sollte ungefähr so aussehen:
/usr/local/sbin:/usr/local/bin:/usr/bin:/sbin:/bin
Wichtig ist dabei, dass der Pfad /usr/local/bin enthalten ist.
Erstellen des eigenen Shellscripts
Zuerst wechseln wir in das Verzeichnis /usr/local/bin:
cd /usr/local/bin
Und dann erstellen wir mit folgendem Befehl ein Shellscript mit dem Namen „aktualisieren“ in diesem Verzeichnis mit Hilfe des nano-Editors:
sudo nano aktualisieren
Hinweis: Es ist gängige Praxis, dass man Shellscripts die Dateiendung .sh spendiert, um sie als solche kenntlich zu machen - wir verzichten in diesem Fall darauf, um das Shellscript möglichst wie einen eigenen Befehl verwenden zu können.
Nachdem sich der Nano-Editor geöffnet hat, wird in der ersten Zeile definiert mit welchem Kommandointerpreter, d.h. mit welcher Shell das Script ausgewertet werden soll (Shebang).
#!/bin/bash
Mit dem „aktualisieren“-Skript wollen wir erreichen, dass das Linux-Betriebssystem aktualisiert wird. Darum ergänzen wir in der nächsten Zeile einen kurzen Hinweis (beliebiger Text) mit
echo Betriebssystem wird aktualisiert!
Und in der übernächsten Zeile tragen wir die für die Aktualisierung erforderlichen apt-Befehle ein:
apt-get update && apt-get -y upgrade && apt-get -y autoremove && reboot
Mit CTRL+X lässt sich das Shell Script nun speichern.
Zurück auf der Kommandozeile muss man noch die Dateirechte des Shell Scripts ändern, um es wie einen eigenen Befehl ausführbar zu machen:
sudo chmod +x aktualisieren
Damit ist das Shell Script fertig und man kann es nun nun von überall aus dem Terminal heraus mit folgendem aufrufen:
sudo aktualisieren
Will man das Ganze nicht nacheinander eingeben, kann man das “aktualisieren”-Script auch in einer einzigen Commandline eingebn:
echo -e '#!/bin/bash\n\necho "Betriebssystem wird aktualisiert!"\n\napt-get update && apt-get -y upgrade && apt-get -y autoremove && reboot' | sudo tee /usr/local/bin/aktualisieren > /dev/null && sudo chmod +x /usr/local/bin/aktualisieren
Last but not least hat man natürlich auch die Möglichkeit den Aktualisierungsbefehl remote über SSH auszuführen - also z.B. vom Mac aus auf dem Linux-Rechner auf dem das Script dann laufen soll. Alles was man hierfür braucht ist ein SSH Zugang:
ssh username@remote_ip_address "echo -e '#!/bin/bash\n\necho \"Betriebssystem wird aktualisiert!\"\n\napt-get update && apt-get -y upgrade && apt-get -y autoremove && reboot' | sudo tee /usr/local/bin/aktualisieren > /dev/null && sudo chmod +x /usr/local/bin/aktualisieren"
Wichtig: Wenn das Script so aufgerufen wird, werden alle Befehle abgearbeitet und am Ende durch den Befehl „reboot“ der Rechner neu gestartet.
Damit ist das erste Shell Script im Linux Terminal erfolgreich angelegt!
Weiterlesen .
Web & CodeShell Script: Python auf Raspberry Pi (Raspbian Jessie) aktualisieren
Der Raspberry Pi gilt als einer der vielseitigsten Ein-Platinen-Computer überhaupt und eignet sich nicht zuletzt aufgrund seiner erstaunlich hohen Performance und gleichzeitig geringem Stromverbrauch als "Dauerläufer" für verschiedenste Automatisierungen.
Sonoya Redaktion
Web & CodeFertiges Shell-Script: n8n auf einem DigitalOcean 1-Click-Droplet aktualisieren
In diesem Beitrag zeige ich dir Schritt für Schritt, wie du ein vollständiges Shellscript erstellst, das deine n8n-Installation auf einem DigitalOcean 1-Click-Droplet automatisch aktualisiert. Du lernst, wo du das Script speichern solltest, wie du es als root-User nutzt und wie…
Sonoya Redaktion
Web & CodeWarum Du IndexNow für Deine Webseite nutzen solltest und wie es funktioniert
IndexNow ist ein neuer, schneller Weg, Suchmaschinen über Änderungen auf Deiner Webseite zu informieren. Dieser Indexierungsdienst wurde von Microsoft Bing entwickelt und ermöglicht es Webseitenbetreibern, Änderungen wie neue Inhalte, gelöschte Seiten oder aktualisierte Seiten…
Sonoya Redaktion
Web & CodeVideo-Anleitung: Eigenes Blog mit WordPress erstellen - so geht's!
Wer einen eigenen Blog, eine Website oder einen Online Shop erstellen will, der wird bei allen drei Themen früher oder später mit dem Content Management System WordPress in Berührung kommen.
Sonoya Redaktion
Web & CodeAnleitung: FastAPI mit API-Key sicher in n8n integrieren
Die Integration von FastAPI in n8n ist für viele Entwickler ein wichtiger Schritt, um leistungsstarke Python-Backends mit automatisierten Workflows zu verbinden. Besonders in der aktuellen Version von n8n (2025) können jedoch einige Herausforderungen auftreten, wenn…
Sonoya Redaktion
Web & CodeSchritt-für-Schritt Anleitung: n8n mit Docker und SSL auf einem Digitalocean Droplet installieren
Wer heute Automatisierungen von Arbeitsabläufen plant, um Effizienz und Produktivität zu steigern, kommt um eine gute Automatisierungslösung nicht umher. Eine leistungsstarke Open-Source-Lösung für dieses Anliegen ist n8n, die es ermöglicht, verschiedene Dienste und Anwendungen…
Sonoya Redaktion