Umgebungsvariablen

Umgebungsvariablen

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.

Inhaltsverzeichnis

Unix und Unix-ähnliche Betriebssysteme

Kommandozeile

In vielen auf UNIX basierenden Betriebssystemen, etwa Linux oder BSD, werden Umgebungsvariablen beim Start eines Kommandozeileninterpreters (Shell) gesetzt. Vordefinierte Umgebungsvariablen werden in der Regel beim Start einer Shell gemäß den Einträgen in einer oder mehreren Konfigurationsdateien automatisch gesetzt. In der Bourne-Shell ist dies beispielsweise die Datei /etc/profile. Zusätzlich benutzt die Shell eine im Heimatverzeichnis jeden Benutzers vorhandene Datei (z.B. .profile oder .cshrc), die benutzerspezifische Umgebungsvariablen enthält und vom Benutzer selbst angepasst werden kann. Diese vordefinierten Umgebungsvariablen kann man sich durch die Eingabe von env in der Shell auch ausgeben lassen.

Vordefinierte Umgebungsvariablen

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

HOME Der Pfad des persönlichen Verzeichnisses des aktuellen Benutzers
LOGNAME Der Name des aktuellen Benutzers
MAIL Der Pfad, in dem die persönlichen E-Mail-Nachrichten des aktuellen Benutzers abgelegt werden
PATH Diese Variable beinhaltet den Suchpfad. Sollte bei der Eingabe eines Befehls kein Verzeichnis angegeben werden, durchsucht die Shell die in dieser Variable gespeicherten Pfade von links nach rechts. Die Verzeichnisnamen werden durch Doppelpunkte „:“ getrennt. Das aktuelle Verzeichnis wird nicht durchsucht, da dies ein mögliches Sicherheitsrisiko darstellt.

Änderung der Umgebungsvariablen

Umgebungsvariablen können folgendermaßen gesetzt und den anderen Prozessen innerhalb des Betriebssystems bekannt gemacht werden:

Bei Bourne, bash und darauf aufbauenden Shells:

Setzen der Variable: <Variablenname>=<Variableninhalt>
Bekanntmachen der Variable: export <Variablenname>
Löschen der Variable: unset <Variablenname>

Bei csh, tcsh und darauf aufbauenden Shells:

Setzen und Bekanntmachen der Variable: setenv <Variablenname> <Variableninhalt>

Anzeige der Umgebungsvariablen

Bei allen Shells:

Abfrage der Variable: echo $<Variablenname>


Prozessabhängigkeit

Es ist ü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 für Prozesse, die von ihm gestartet wurden (Child-Prozesse), gültig.

Weblinks

MS-DOS

Unter MS-DOS und damit kompatiblen DOS-Varianten (mit oder ohne einem darauf laufenden 16-Bit-Windows, also Windows 1.x–3.x) und älteren Versionen von 32-Bit-Windows (also Windows 95/98/Me) werden die Umgebungsvariablen in der Datei AUTOEXEC.BAT, welche zu Systemstart ausgeführt wird, oder anderen Batch-Dateien gesetzt.

Windows

Kommandozeile

Um sich in der Kommandozeile den Wert einer Umgebungsvariable anzeigen zu lassen, verwendet man echo %NAME%, wobei für NAME der Variablenname eingesetzt wird. Der set-Befehl steht als Kommandozeilen-Editor zur Verfügung. Er lässt sich auch sehr gut innerhalb von Batch-Dateien verwenden. Der Befehl set als solcher listet alle gesetzten und somit 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 Variablen eingesetzt wird. 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 oder der Menüpunkt „Systemsteuerung — System“ oder die Tastenkombination Windows+Pause. 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. Diese 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
ERRORLEVEL Den Fehlercode des zuletzt ausgeführten Befehls
RANDOM Generiert eine Zufallszahl zwischen 0 und 32767
CMDCMDLINE Beinhaltet die Befehlszeile des aktiven Kommandointerpreters, siehe auch COMSPEC

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
HOMEDRIVE Der Pfad des Startlaufwerks
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 oder WINDIR Der Pfad des Windows System-Verzeichnisses

Registrierung

Unter den neueren auf NT basierenden Versionen von Windows (Windows NT/​2000/​XP/​2003/​Vista) werden Umgebungsvariablen in der Registrierung gespeichert. Der Registrierungspfad

HKEY_CURRENT_USER \
      Environment

bzw. bei Windows XP (für z.B. HOMEDRIVE) und Windows Vista

HKEY_CURRENT_USER \
      Volatile Environment

wird für Umgebungsvariablen verwendet, welche nur den aktuellen Benutzer betreffen; Der Pfad

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

hingegen dient zur Speicherung von Umgebungsvariablen, die im Gesamtsystem gültig sind. Mit dem Befehl regedit lassen sich diese Pfade leicht durchsuchen.

Mögliche Probleme

Die geänderten Umgebungsvariablen werden innerhalb einer „Eingabeaufforderung“ (Shell) erst dann aktualisiert, wenn sie neu gestartet wird. Wird die Shell aus einem Windows-Explorer heraus gestartet (z.B. mittels „Open Command Window here“), und ist die Option „Ordnerfenster in einem eigenen Prozess starten“ in der Einstellung des Windows-Explorers aktiviert, so muss auch der Windows-Explorer neu gestartet werden, damit die geänderten Einstellungen sichtbar werden.


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Umgebungsvariable — 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… …   Deutsch Wikipedia

  • Systemvariable — 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… …   Deutsch Wikipedia

  • OpenMP — Logo Basisdaten Entwickler Liste kompatibler Compiler …   Deutsch Wikipedia

  • Openmp — (Open Multi Processing) ist eine seit 1997 gemeinschaftlich von verschiedenen Hardware und Compilerherstellern entwickelte Programmierschnittstelle. Der Standard dient zur Shared Memory Programmierung in C/C++/Fortran auf Multiprozessor Computern …   Deutsch Wikipedia

  • cmd.exe — cmd.exe, Lorem ipsum anzeigend Basisdaten Entwickler Microsoft Corporation Betriebssyst …   Deutsch Wikipedia

  • Cmd.exe — cmd.exe, Lorem ipsum anzeigend, mit dem Standardtitel unter Windows 2000, Eingabeaufforderung Basisdaten Entwickler: Microsoft Corpora …   Deutsch Wikipedia

  • Env — (von engl. environment = Umgebung) ist ein Unix Befehl, der entweder eine Liste der Umgebungsvariablen anzeigt oder ein anderes Programm in einer anderen Umgebung ausführt, ohne die Variablen der aktuellen Umgebung zu ändern. Mittels env können… …   Deutsch Wikipedia

  • MS-DOS — Bildschirmfoto …   Deutsch Wikipedia

  • MSDOS — MS DOS Entwickler Microsoft (ursprünglich SCP/Tim Paterson) Version 6.22 (1994) Abstammung …   Deutsch Wikipedia

  • MS DOS — Entwickler Microsoft (ursprünglich SCP/Tim Paterson) Version 6.22 (1994) Abstammung …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”