Shell-Skripte selbst schreiben (Teil 2)

Global vs. lokal

In der Bash definieren Sie Variablen global (für das gesamte Skript) oder lokal (nur für innerhalb der Funktion). Für Letzteres setzen Sie das Schlüsselwort local vor die Definition der Variablen (Listing 17).

Listing 17

 

#!/bin/bash
# Variablendefinition
a="Wert1"
b="Wert2"
echo "Ausgangsdefinition:"
echo "  " $a
echo "  " $b
echo " "
function hallo {
  a="Neuer Wert a"
  local b="Neuer Wert b"
  echo "In der Funktion:"
  echo "  " $a
  echo "  " $b
  echo " "
  return 0
}
hallo
echo "Nach Funktionsausführung:"
echo "  " $a
echo "  " $b
echo " "

Fazit

Mithilfe von Fallunterscheidungen programmieren Sie schnell und einfach Menüs für Ihre Software. Welches Konstrukt dabei das optimale ist, unterscheidet in der Regel den konkreten Anwendungsfall.

Funktionen helfen Ihnen, Teile des Codes in einfache Blöcke zu strukturieren, die Sie im gesamten Skript einsetzen dürfen. Das fördert die Übersichtlichkeit und Wartbarkeit, da es etwa das Austauschen eines Parameters drastisch vereinfacht. 

Der Autor

Harald Zisler beschäftigt sich seit den frühen 90er-Jahren mit FreeBSD und Linux. Zu Technik- und EDV-Themen verfasst er Bücher und Beiträge für Zeitschriften. Aktuell hat er die vierte Auflage von "Computer-Netzwerke" veröffentlicht, erschienen beim Rheinwerk Verlag.

Infos

  1. Shell-Workshop, Teil 1: Harald Zisler, "Solides Fundament", RPG 03-04/2017, S. 12, http://www.raspi-geek.de/38327

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Aktuelle Ausgabe

12/2019
RasPi-Alternativen

Diese Ausgabe als PDF kaufen

Preis € 9,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Grußbotschaften

    Mit Sonic Pi zaubern Sie komplexe Sounds, die Sie bei Bedarf sogar noch während des Abspielens modifizieren.

  • Das Runde und das Eckige

    Mit dem MCP4725 ergänzen Sie einen RasPi um einem D/A-Wandler, der bei Bedarf noch weitere Funktionen erfüllt.

  • Alles unter Kontrolle

    Schon ein einfaches Mikrocontrollerboard wie das CY8CKIT-049-42xx bietet erstaunlich viele Möglichkeiten beim Ansteuern von Hardware.

  • Viele Kerne

    Das Spresense Development Board von Sony lässt sich mit der Arduino IDE programmieren und bringt auch ein eigenes Entwickler-SDK mit.

  • Exotische Früchte

    Der aus China stammende Orange Pi positioniert sich mit einem guten Preis und interessanten Features gegen die RasPi-Truppe. Kann er sich auch behaupten?

  • Flexibler Surfer

    Mit dem neuen RasPi 4 setzen Sie einen öffentlichen Webkiosk schnell und kostengünstig auf.

  • Auskunftsfreudig

    Viele Devices, so auch der E.ON-Aura-Controller, verwenden eine Schnittstelle namens REST, um Zustandsdaten zu übermitteln. Mit ein wenig Bastelei lesen Sie diese auch über Ihr Smartphone aus.

  • Doppelt gemessen

    Mit wenig Aufwand und einem Pi Zero realisieren Sie einen mobilen Zweikanal-Spannungsprüfer.

  • Elegant zusammengeführt

    Tizonia streamt Musik von Online-Quellen und lokalen Sammlungen. Die schlanke Architektur macht den Player zur guten Wahl für den Einsatz auf dem RasPi.

  • Kommunikativ

    Nicht jeder traut sich zu, sein eigenes Smartphone zu bauen. Allerdings kann jeder Linux-Nutzer den Raspberry Pi im Handumdrehen zu einem VoIP-Telefon aufrüsten.