Umgebungsvariablen dienen in Skripts zur Aufnahme von Status- und Zeichenfolgeninformationen. Variablen können für lange und umständlich einzugebende Zeichenfolgen substituiert werden. Das Verändern des Werts der Variablen ist bequemer als das erneute Edieren des Skripts, wenn sich der Wert für die Zeichenfolge ändern soll.
Umgebungsvariablen sind Variablen, die von AmigaDOS selbst verwaltet werden und nicht von Anwendungsprogrammen. Dies hat den Vorteil, daß auf diese Variablen von verschiedenen Programmen oder Befehlsdateien aus zugegriffen werden kann. Wenn in einer Befehlsdatei ein Dollarzeichen ($) mit einem Variablennamen dahinter angetroffen wird, wird diese Variable durch den ihr zugeordneten Wert ersetzt. Die Befehlszeile wird dann ausgeführt, als ob der Wert für die Variable eingegeben worden wäre.
AmigaDOS unterstützt beispielsweise die Variablen Workbench und Kickstart, die die aktuelle Versionsnummer von Workbench bzw. Kickstart beinhalten. Durch die folgende Befehlszeile wird die Workbench-Versionsnummer am Bildschirm ausgegeben:
ECHO "Amiga Workbench Version $Workbench"
Manche Variablen, z.B. die Variablen Workbench und Kickstart, wurden bereits erstellt. Die Shell berücksichtigt die Variable ECHO und aktualisiert die lokalen Variablen PROCESS, RC und RESULT2 automatisch. Die Variablen werden im folgenden erläutert:
Wenn Sie beispielsweise am Anfang eines Skripts den Befehl SET ECHO ON eingeben, werden alle Befehlszeilen des Skripts auf dem Bildschirm angezeigt, bevor ihre Ausführung beginnt.
Wenn einer Umgebungsvariablen ein numerischer Wert zugeordnet wird, kann die Variable wie eine Zahl in Berechnungen und Ausdrücken verwendet werden. Sie können Sie z.B. der Variablen "neun" den Wert 9 zuordnen und dann $neun in EVAL-Ausdrükken verwenden. Beispiel:
1> SETENV neun 9
1> EVAL 5 * $neun
45
EVAL ist ein AmigaDOS-Befehl zur Berechnung ganzzahliger und Boolescher Ausdrücke. Der Befehl kann keine Umgebungsvariablen verarbeiten, die numerische Werte mit Hinterkommastellen aufweisen; achten Sie darauf, EVAL nur für ganzzahlige Werte zu verwenden.
Umgebungsvariablen werden mit den Befehlen SET und SETENV erstellt.
Mit SET können Sie lokale Variablen erstellen. Diese gelten nur für die Shell, in der sie erstellt wurden, und in allen aus dieser Original-Shell entstandenen untergeordneten Shells. Wenn Sie beispielsweise eine Umgebungsvariable im Shell-Fenster erzeugen und dann den Befehl NEWSHELL über den Menüpunkt "Befehl ausführen" ausführen, sind in dieser neuen Shell die in der ersten Shell erstellten Variablen nicht gültig. Hätten Sie allerdings eine zweite Shell geöffnet, indem Sie in der ersten Shell den Befehl NEWSHELL als Befehlszeile eingeben, würden alle Variablen der übergeordneten Shell auch für die neue Shell gelten.
Der Wert einer Variablen wird mit dem Befehl GET angezeigt, und mit dem Befehl UNSET wird eine Variable gelöscht.
Mit SETENV werden globale Variablen erstellt, die für alle Shells gelten. Sie werden als kleine ASCII-Dateien im Verzeichnis ENV: gespeichert. Variablenwerte werden mit GETENV angezeigt, und mit UNSETENV werden globale Variablen gelöscht. Es ist empfehlenswert, globale Variablen nur dann einzusetzen, wenn auch andere Prozesse auf die Variable zugreifen sollen.
Manche Anwendungen arbeiten mit Umgebungsvariablen. So unterstützt z.B. das Programm MORE eine Umgebungsvariable für den Editor. Sie können mit SETENV MEmacs als Ihren gewünschten Editor definieren:
1> SETENV Editor Extras:Tools/MEmacs
Achten Sie darauf, den vollständigen Pfad zu MEmacs anzugeben.
Wenn Sie mit MORE den Inhalt der Datei User-startup anzeigen, schaltet die Tastenkombination Shift-E dann automatisch in einen MEmacs-Bildschirm, in dem die Datei User-startup geladen ist und zur Bearbeitung bereitsteht.