Umgebungsvariable



Als Umgebungsvariable ein bezeichnet Konfigurierbare Die Variable in Betriebssystem , oft sterben Pfade zu Bestimmt Rahmen Prog oder Daten Enthalten, Eulen Bestimmt Daten und Einstellungen Kind, sterben von mehreren Prog Rahmen used Werden Können. Im Allgemeinen handelt es sich um Zeichenketten .

Eine andere Bezeichnung ist auch Global Variable ; allerdings ist das eher unüblich, stirbt dann in vielen Programmiersprachen in Einer other bedeutung used Wird.

Benutzer oder Anwendungen können diese Variablen lesen und / oder ändern.

Unix und Unix-ähnliche Betriebssysteme

Kommandosegel

In vielen auf UNIX basierenden Betriebssystem, ETWA OS X , Linux oder BSD , [1] Werden Umgebungsvariablen beim Start Eines Kommandozeileninterpreters ( Shell ) Gesetzt. Vordefinierte Umgebungsvariablen wurden initialisiert, um den Prozess zu starten, die Standardeinstellungen werden automatisch gesetzt. In der Bourne-Shell ist Beispielsy stirbt Datei /etc/profile. Ergänzlich nutzt die Shell eine im Verzeichnis des Benutzers vorhandene Datei (z. B. .profileoder.cshrc), die auf dem Gebiet der Entwicklung und Entwicklung nützlich waren. Diese Definitionen lassen sich auch printenvin der Shell aussprechen. Ihr Programm envsucht nach allen Umbrella-Variablen, um eines der Programme zu lesen. Beide Befehle sind Bestandteil der Coreutils .

Vordefinierte Umgebungsvariablen

Unique Umgebungsvariablen findet das ganze Unix-System 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 Nutzers aufgegeben wurden
PATH Diese Variable enthält den Suchpfad. Sollte bei der Eingabe eines Befehls kein Verzeichnis angegeben, durchsucht die Shell, die sich in dieser Variablenpfade von links nach rechts spiegelte. Diese Namen wurden unter unixoiden Betriebssystemen durch Doppelpunkt „:“ zerrissen. Ihr aktuelles Verzeichnis wird nicht durchsucht, da ein Sicherheitsrisiendarstellt.

Änderung der Umgebungsvariablen

Die Umgebungsvariablen können folgende Bedingungen im Betriebssystem erfüllen:

Bei Bourne, bash und darauf aufzubauenden Muscheln:

Mengen von Variablen: <Variablenname>=<Variableninhalt>
Bekanntmachen der Variablen: export <Variablenname>
Löschen der Variablen: unset <Variablenname>

Bei csh, tcsh und darauf aufzubauenden Muscheln:

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

Anzeigen von Umgebungsvariablen

Anzeigen aller Umgebungsvariablen

Abfrage der Variablen: env

Anzeigen einer bestimmten Umgebungsvariablen

Bei allen Muscheln:

Abfrage der Variablen: echo $<Variablenname>

Prozessabhängigkeit

Dies ist, was die Umgebungsvariablen pro System-Prozess aussprach. Die zweite Generation, der erste Prozess der Variable, war zum ersten Mal das erste Mal und begann zum ersten Mal zu arbeiten (Child-Prozesse).

Microsoft

Die Funktionalitäten von MS DOS und darin Windows-Shell bzw. Kommandozeile ist grundsätzlich gleich. Unter Windows sind weitere Funktionen und Standard variabel hinzugekommen.

Setzen

Die Umrechnungsvariablen werden aus der Beefhlszeile aus oder aus Stapelverarbeitungsdateien (.cmd, .BAT) mit ihnen SET-Befehl gesetzt (z. B. SET PROMPT = $ P $ G). Wird der SET-Befehl alle angegeben, wurden alle Umgebungsvariablen erwähnt, und wird nur der Name einer Variable angegeben. Löschen lässt sich sagen, dass auf den Variablennamen =Angegegeben wird (z. B. SET PROMPT =).

Anfrage

In Stapelverbatungsdateien (.BAT) wurden Umgebungsvariablen eingerechnet, die in Prozentzeichen eingeklammert wurden (z. B. CD% VARIABLE%). Sie können den Host gerne mit dem Variablenersatz programmieren.

Die Programmierung der Umgebungsvariablen des Aufrufenden Programms (in der normalen Version der COMMAND.COM ) in das eigene Umgebungssegment (schlimmer in PSP eine Adresse 2C h ). Das Umbrella-Segment von Eines Programms wird nach desen Version verkehren.

Setzen aus Programmen heraus

Dort , wo Mechanismus Umgebungsvariablen nicht vor sah that Aus einem Programm oder Eine geschachtelt aufgerufenen Shell (CMD) Umgebung heraus Umgebungsvariablen sterben , wo übergeordneten Shell Geändert Werden Kann. Aufgrund wo Vererbung von Den Variable Wirken sie Veränderungen an der Umgebung nicht auf Eigene Umgebung , wo COMMAND.COM (die Master – Environment ) aus. Auch ein Aufruf Dezember Befehlszeilenbefehl SET Aus einem Programm heraus has no WIRKUNG, dann stirbt Eine neue Instanz , wo COMMAND.COM gestartet.

Folgender Trick Krieg unter DOS und Windows – Version Älteren Möglich: Die Umgebung , wo COMMAND.COM Könnte Verändert Werden, INDEMAR Mann über den Ersten Speichersteuerblock über INT 21 AH = 52h eine Adresse [BX-2h] findet, Und dann Speichersteuerblock für Speichersteuerblock durchsucht, Bisexuell Change das Kommando von Command.COM findet und diese. Das funktioniert allerdings nicht mehr ab Windows NT, dann dort sterben Umgebung , wo COMMAND.COM Regelmässig vom NT – Kernel neu wird geladen.

Die Festlegung Wacholder Umgebungsvariable in Einem Programm und folgende verwendung in Einem Shell oder Batch – Skript ist möglich, INDEMAR in ihnen Programm nach äNDERN die Umgebung des Eigen Shell oder Batch – Skript aus diesem Programm heraus Geste erzogene Werden. Ein Sölch Aufruf Wird in der Regel in Programmiersprachen Profilierung mittels Aufruf der jeweiligen Betriebssystem-Funktion Unterstützt in Java beispielsweise mit der Klasse java.lang.ProcessBuilder. Die geänderte Umgebung des Programms wirkt als Elternteil für diesen Aufruf.

In Windows-Batch-Programmen (auch unter DOS) wird die Änderung der Umgebung eines gerufenen Batch (Call-Befehl) auf Ebene ausgeführt, die die COMMAND-Umgebung nicht überschreibt. Dies ist eine gute Idee für den Aufruf eines Unix-Shell-Skripts aus einem Skript. Dieser Artikel wurde in einer der folgenden Sprachen geschrieben: Childhood Umbrella einbetted, die ook nicht für die rufende Ebene vergoldet.

Unter Windows gibt es keine Programme, zB Programme, mit denen man Videos herunterladen und importieren kann: Programme mit kleiner Batch-Datei in einem oder mehreren Temp-Verzichnis der aktuellen Version.

setze VARIABLE = WERT

This tempores Batchfile wird dann im Gesamtbatch nachfolgend eingerufen:

mysetenv.exe someparameters> setenv.bat
Aufruf setenv.bat
folgenden Batch-Befehl

Windows Command Sail

Um sich in der Kommandozeile der Wert Einer Umgebungsvariable anzeigen zu lassen, used Mann echo %NAME%oder set NAME, Wobei für NAMEwo Variablenname eingesetzt Wird. Dort setsteht-Befehl steht als Commander Segeleditor zur Verfügung. Sind Sie sicher, dass Sie von Batch-Dateien verwöhnt werden? Der Befehl setals Solcher listet alle Siedlungen und ähnliche Gemälde auf. Mag man Eine Umgebungsvariable erstellen oder Ein bestehender EIN Neuer Wert zuweisen, Nutzen ein set NAME=WERT, Wobei statt NAMEder Namen und statt WERTder künftige Wert Die Variable eingesetzt Wird die. set /?Gibt ausführliche Informationen zu Funktionen des Befehls aus.

Grafische Oberfläche

EIN GRAFISCHE Editor zum Fliegen Bearbeiten der Umgebungsvariablen bietet den befehl rundll32 sysdm.cpl,EditEnvironmentVariablesoder den Menüpunkt „Systemsteuerung – Systems“ oder Die Taste Kombination WindowsPause. Dort Editor ist Unter dem Register „Erweitert“ und dort unter „Umgebungsvariablen“ zu finden.

Benutzervariablen und Systemvariablen

Neuere Windowsversionen (beispielsweise Windows XP oder Windows 7) unterscheiden between „Benutzervariablen“, sterben sich nur auf den momentanen eingeloggten Benutzer Beziehen, und „Systemvariablen“, sterben für das Gesamt-System (auch alle übrigen Auch Benutzerkonten) Gelb Sind.

Dynamische Umgebungsvariablen

Einzigartige DOS- und Windows-Programme erlauben Ihnen, Umgebungsvariablen zur Verfügung zu stellen. Diese sind nicht fest gespichert, wo es ein Wrack der Ausgabe gibt. Beispiele für dynamische Umgebungsvariablen

CD Gibt das Verzeichnis an, in dem der Abfandende gefunden wurde. (auch DOS; klassisch: ohne Laufwerksbuchstabe; ab etwa Windows XP: meine Laufwerksbuchstaetten)
DATUM Aktuelles Systemdatum
ZEIT Aktuelles System Zeit
Error- Fehlercode des empfohlenen Befehls (auch DOS)
RANDOM Erzeugt eine Zufallszahl zwischen 0 und 32767
CMDCMDLINE Enthaelt die Befehlszeile des aktiven Befehlsinterpreters, siehe auch COMSPEC

Vordefinierte Umgebungsvariablen

Abhängig von der verwendeten Windows-Version, bitte entschuldigen Sie, Systemstart oder beim Einloggen definierter Umgebungsvariablen. Die Werte von von Landessprache und von dem Laufwerksbuchstab des Betriebssystemlaufwerkes abhängen. Zum Beispiel:

Variable Windows XP Windows Vista / 7 bemerkung
 % ALLUSERS PROFILE% (% PROGRAMMDATEN%) C: \ Dokumente und Einstellungen \ Alle Benutzer C: \ Program Data
 % APPDATA% C: \ Dokumente und Einstellungen \ {Benutzername} \ Anwendungsdaten C: \ Benutzer \ {username} \ AppData \ Roaming
 % COMPUTER NAME% {Computername}
 % COMMON PROGRAM FILES% C: \ Program \ Gemeinschaftsdatum C: \ Programme \ Gemeinsame Dateien
 % COMMON (x86)% C: \ Programm (x86) \ Gemeinschaftsdatum C: \ Programme (x86) \ Gemeinsame Dateien
 % Comspec%  % SystemRoot% \ system32 \ CMD.exe Pfad zum Befehl
Sailing -Interpreter % SystemRoot% entsprechend erweitert
auch DOS
 % HOME DRIVE% C: C:
 % HOMEPATH% \ Dokumente und Einstellungen \ {Benutzername} \ Users \ {username}
 % LOCALAPPDATA% n / a C: \ Benutzer \ {username} \ AppData \ Local
 % LOGO SERVER% \\ {domain_logon_server}
 % O% Windows_NT Windows_NT
 % PATH%  % System% \ system32;% SystemRoot%;% SystemRoot% \ system32 \ Wbem PATH
% SystemRoot% entsprechend erweitert
auch DOS
 % PATHEXT% .COM, .EXE, .BAT, .CMD, .VBS, .VBE, .JS, .WSF, .WSH .com, .exe, .bat, .cmd, .vbs, .vbe, .js, .jse, .wsf, .wsh, .msc
 % PROGRAM FILES% C: \ Programme C: \ Programme
 % (X86)% C: \ Programm (x86) C: \ Programme (x86)
 % PROMPT% $ P $ G auch DOS
 % Systemlaufwerk% C: C:
 % SystemRoot% C: \ Windows
(Windows 2000 und Davor: C: \ WINNT)
C: \ Windows
 % TEMP% oder% TMP% C: \ Dokumente und Einstellungen \ {Benutzername} \ Lokale Einstellungen \ Temp C: \ Benutzer \ {username} \ AppData \ Local \ Temp TEMP
 % USER DOMAIN% {Anwender domain}
 % BENUTZERNAME% {Username} Der Name des aktuellen Benutzers
 % USERPROFILE%  % Systemlaufwerk% \ Dokumente und Einstellungen \ {Benutzername} C: \ Benutzer \ {username}
 % WINDIR% C: \ Windows C: \ Windows Historische Form (16-Bit-Windows), Kompatibilität beibehalten. Muss ist immer identisch mit% SystemRoot% signal.
 % PUBLIC% n / a C: \ Benutzer \ Öffentlich
 % PSModulePath% n / a  % System% \ system32 \ Windows Powershell \ v1.0 \ Modules \
PATH Durch Semikolon zerrissene Pfade, in der diese Reihenfolge ausführbare Programm wurde geschlachtet, wenn ein Befehl nicht im aktuellen Verzeichnis gefunden wurde. Daneb gibt einen weiteren Mechanismus der Programmregistrierung.
TEMP Zum Datenschutz sollte ein allgemeines Verzeichnis für alle Benutzer-Signale, und ein spezifisches Benutzerhandbuch; etwa% HOMEDRIVE %% HOMEPATH% \ TEMP.

Registrierung

Unter den Neuen auf NT basierende Version von Windows – (Windows NT / 2000 / XP / 2003 / Vista) Wird Umgebungsvariablen in der Registrierung Gespeichert. Dort Registrierungspfad

 HKEY_CURRENT_USER \ Environment

BZW. in Windows XP (z. B. HOMEDRIVE) und Windows Vista

 HKEY_CURRENT_USER \ Volatile- Umgebung

Wird für Umgebungsvariablen verwendet, siehe den aktuellen Benutzer. Da Pfad

 HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Umgebung

solligen sollte von Umgebungsparametern sein, die Gesamtsystemgültig sind. My der Suchfunction des Registrationseditors Schlüssel nach den gewünschten Einträgen durchsehen.

Mein Name ist Befehl regeditim Ausführen-Dialog ( WindowsR) wurde möglicherweise gestartet.

Achtung: Unsachgemäße Veränderungen in der Registrierung können schwerwiegende Folgen haben. Eternity soll nur vorgenommen werden, wenn mann weiß war tut. Gerne können Sie uns im Bereich der Registrierungsdates besuchen.

Verzögerung bei der Anwendung ändert die Variablen

Beim Start eines Prozesses (EXE-Datei) wurden Änderungen vorgenommen, die Anwendung wurde vom Register veröffentlicht und bildete die „eingfroren“, die auch „Snapshot“ der aktuellen Variablen genannt wird. Spectacles dispatched Umgebungsvariablen, die nicht auf die laufenden Prozesse wirken (so das Programm der entsprungenen Windows-Botschaft ).), sodas Prozesse, die eine Blattschnecke besitzt („Eingabeaufforderung“) nichts davon mitbekommen. Sollen, die in einer Shell zerstört wurden, wurden mit einer neuen Instanz der Shell geladen. Es spielt keine Rolle, ob eine bereits geöffnete Shell mit den alten Umgebungsvariablen vorher geschlossen wurde oder nicht. Es können zwei Schalen mit unterschiedlichen Umgebungsvariablen ausgeführt werden.

Wird de Shell hat den Windows Explorer Explorer gestartet (z. B. mittens „Open Command Window Here“), und die Option „Windows Installer Autostart Only Only“ öffnet sich im Windows Explorer Explorer Fenster, also muss mans von Windows -Explorer wurde gestartet, was geänderte Einstellungen sichtbar macht.

Einzelstunden

  1. Hochspringen↑ Erläuterungen zu Umgebungsvariablen unter Ubuntu-Linux
  2. Hochspringen↑ WM_SETTINGCHANGE Nachricht