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. .profile
oder.cshrc
), die auf dem Gebiet der Entwicklung und Entwicklung nützlich waren. Diese Definitionen lassen sich auch printenv
in der Shell aussprechen. Ihr Programm env
sucht 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 |
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 NAME
wo Variablenname eingesetzt Wird. Dort set
steht-Befehl steht als Commander Segeleditor zur Verfügung. Sind Sie sicher, dass Sie von Batch-Dateien verwöhnt werden? Der Befehl set
als 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 NAME
der Namen und statt WERT
der 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,EditEnvironmentVariables
oder den Menüpunkt „Systemsteuerung – Systems“ oder Die Taste Kombination Windows+ Pause. 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 \ |
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 regedit
im Ausführen-Dialog ( Windows+ R) 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
- Hochspringen↑ Erläuterungen zu Umgebungsvariablen unter Ubuntu-Linux
- Hochspringen↑ WM_SETTINGCHANGE Nachricht