Zum Inhalt springen

Umgebungsvariable

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 23. Dezember 2005 um 14:53 Uhr durch Dimedo (Diskussion | Beiträge) (Grafische Hilfsmittel). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Der Begriff Umgebungsvariable ist ein Begriff aus dem Bereich der Betriebssysteme von Computern. Eine Umgebungsvariable enthält beliebige Zeichenketten, die in den meisten Fällen Pfade zu bestimmten Programmen oder Daten enthalten, sowie bestimmte Daten, die von mehreren Programmen verwendet werden können.

Ein anderer Begriff für Umgebungsvariable ist auch globale Variable; allerdings ist dieser Begriff eher unüblich, da er in vielen Programmiersprachen in anderer Bedeutung verwendet wird.

Benutzer oder Anwendungen können Werte dieser Variablen auslesen und/oder verändern.

*nix

Kommandozeile

In vielen auf UNIX basierenden Betriebssystemen wie Linux oder BSD, werden Umgebungsvariablen schon während des Bootens gesetzt. Ein Besipiel dafür ist die Datei /etc/profile, welche von einigen Unix Systemen beim Boot-Vorgang ausgelesen wird. Zusätzlich benutzt die Shell eine im Heimatverzeichnis jeden Benutzers vorhandene Datei (z.B. .profile oder .cshrc), die benutzerspezifische Umgebungsvariablen enthält und vom jeweiligen Benutzer selbst angepasst werden kann.

Erstellt oder verändert werden Umgebungsvariablen zumeist mittels des Befehls env. Ausgegeben werden sie, ähnlich wie unter Microsoft-Betriebssystemen, mit echo $NAME, wobei NAME durch den Namen der gewünschten Variable ersetzt werden muss.

Vordefinierte Umgebungsvariablen

Einige Umgebungsvariablen finden sich auf fast allen Unix-Systemen wieder. Beispiele hierfür sind:

PATH Pfade die hier gelistet werden, werden nach Befehlen durchsucht die ohne Angabe eines Verzeichnisses ausgeführt werden
HOME Der Pfad des persönlichen Verzeichnisses des aktuellen Benutzers
MAIL Der Pfad in der die persönlichen E-Mail Nachrichten des aktuellen Benutzers abgelegt werden
USER Der Name des aktuellen Benutzers

Prozessabhängigkeit

Unter Unix ähnlichen System ist es üblich, dass die Menge der Umgebungsvariablen pro System-Prozess gespeichert werden. Änderungen die ein Prozess am Bestand der Variablen vornimmt, sind nur für ihn selbst und Prozesse die von ihm gestartet wurden (Child-Prozesse) gültig.

MS-DOS

Unter MS-DOS (mit oder ohne einem 16-Bit Windows) und älteren Versionen von 32-Bit Microsoft Windows (95, 98, Me) werden die Umgebungsvariablen in der Datei AUTOEXEC.BAT, welche zu Systemstart ausgeführt wird, oder anderen Batch-Scripts gesetzt.

Windows

Kommandozeile

Um sich in der Kommandozeile den Wert einer Umgebungsvariable anzeigen zu lassen verwendet man echo %NAME%, wobei für NAME der Variable eingesetzt wird. Der set-Befehl steht als Kommandozeilen Editor zur Verfügung. Er lässt sich auch sehr gut in Batch-Scripten verwenden. Der Befehl set als solcher listet alle verfügbaren Umgebungsvariablen auf. Möchte man eine Umgebungsvariable erstellen oder einer bestehenden einen neuen Wert zuweisen, nutzt man set NAME=WERT, wobei statt NAME der Name und statt WERT der künftige Wert der Variable eingesetzt wir. set /? gibt ausführliche Informationen zu den Funktionalitäten des Befehls.

Grafische Oberfläche

Einen grafischen Editor zum direkten Bearbeiten der Umgebungsvariablen bietet der Befehl sysdm.cpl . Der Editor ist unter dem Register "Erweitert" und dort unter "Umgebungsvariablen" zu finden.

Dynamische Umgebungsvariablen

Einige Windows Versionen stellen von sich aus dynamisch generierte Umgebungsvariablen zur Verfügung. Dieser werden nicht fest gespeichert und der Wert wird kurz vor der Ausgabe ermittelt. Beispiele solcher dynamischer Umgebungsvariablen sind:

CD Gibt das Verzeichnis aus, in dem sich der Abfragende gerade befindet
DATE Das aktuelle System-Datum
TIME Die aktuelle System-Zeit
DATE Eine Zufallszahl
ERRORLEVEL Den Fehlercode des zuletzt ausgeführten Befehls

Vordefinierte Umgebungsvariablen

Abhängig von der verwendeten Windows-Version stehen weitere, beim Systemstart oder beim Einloggen definierte Umgebungsvariablen bereit. Zum Beispiel:

PATH Pfade die hier gelistet werden, werden nach Befehlen durchsucht die im aktuellen Verzeichnis nicht gefunden werden konnten
HOMEPATH Der Pfad des persönlichen Verzeichnisses des aktuellen Benutzers
TEMP oder TMP Der Pfad des Verzeichnisses in das Windows-Anwendungen temporäre Dateien zwischenspeichern.
USERNAME Der Name des aktuellen Benutzers
SystemRoot Der Pfad des Windows System-Verzeichnisses

Registrierung

Unter den neueren Versionen von Microsoft Windows (NT, 2000, XP und Server 2003) werden Umgebungsvariablen in der Registrierung gespeichert. Der Registrierungs-Pfad

HKEY_CURRENT_USER \
      Environment

wird zur Speicherung von Umgebungsvariablen, welche nur den aktuellen Benutzer betreffen und

HKEY_LOCAL_MACHINE \
            SYSTEM \
 CurrentControlSet \
           Control \
   Session Manager \
       Environment

für im Gesamtsystem gültige Umgebungsvariablen verwendet. Mit dem Befehl regedit lassen sich diese Pfade leicht durchsuchen.