Umgebungsvariable

Ein Umgebungsvariable ist ein dynamisch benannt Wert Das kann den Weg des Laufens beeinflussen Prozesse wird sich auf einem Computer verhalten. Sie sind Teil der Umgebung, in der ein Prozess ausgeführt wird. Ein laufender Prozess kann beispielsweise den Wert der Temp -Umgebungsvariablen abfragen, um einen geeigneten Ort zu speichern temporäre Dateienoder die Variable zu Hause oder Benutzerprofile, um die zu finden Verzeichnisaufbau Im Besitz des Benutzers im Besitz des Prozesses.

Sie wurden 1979 in ihrer modernen Form mit eingeführt Version 7 Unix, sind auch in allen enthalten Unix Betriebssystem Aromen und Varianten von diesem Punkt an einschließlich Linux und Mac OS. Aus PC DOS 2.0 Im Jahr 1982 gelang es allen, alle erfolgreich zu sein Microsoft Betriebssysteme, einschließlich Microsoft Windows, und OS/2 haben sie auch als Funktion aufgenommen, wenn auch mit etwas unterschiedlichen Syntax-, Verwendungs- und Standard -Variablennamen.

Entwurf

Insgesamt Unix und Unix-artig Systeme sowie unter Windows haben jeder Prozess seinen eigenen Umgebungsumfang Variablen. Wenn ein Prozess erstellt wird, erbt er standardmäßig ein Duplikat Laufzeitumgebung seines übergeordneten Prozesss, mit Ausnahme expliziter Änderungen des Elternteils, wenn es das Kind schafft. Bei der API Level müssen diese Änderungen zwischen dem Laufen erfolgen Gabel und Geschäftsführer. Alternativ von Befehlsschalen wie zum Beispiel verprügeln, ein Benutzer kann Umgebungsvariablen für einen bestimmten Befehlsaufruf ändern, indem sie ihn indirekt über aufrufen env oder mit dem Umwelt_Variable = Wert Notation. Ein laufendes Programm kann für Konfigurationszwecke auf die Werte von Umgebungsvariablen zugreifen.

Shell -Skripte und Stapeldateien verwenden Umgebungsvariablen, um Daten und Vorlieben zu kommunizieren Kinderprozesse. Sie können auch verwendet werden, um temporäre Werte später in einem Shell -Skript als Referenz zu speichern. Jedoch in Unix, Nicht exportierte Variablen werden dafür bevorzugt, da sie nicht außerhalb des Prozesses austreten.

In UNIX wirkt sich eine Umgebungsvariable, die in einem Skript oder kompilierten Programm geändert wird, nur auf diesen Prozess und möglicherweise diese Kinderprozesse aus. Der übergeordnete Prozess und alle nicht verwandten Prozesse sind nicht betroffen. In ähnlicher Weise ändern oder entfernen Sie den Wert einer Variablen in a DOS oder Windows -Batch -Datei ändert die Variable für die Dauer von Command.comoder Cmd.exe's Existenz jeweils.

In Unix werden die Umgebungsvariablen normalerweise während des Systems vom System initialisiert drin Startkripteund daher von allen anderen Prozessen im System geerbt. Benutzer können sie im Profil -Skript für die Befehlshell, die sie verwenden, sie im Profilskript erweitern. In Microsoft Windows wird der Standardwert jeder Umgebungsvariablen in der gespeichert Windows -Registrierung oder in der Autoexec.bat Datei.

An Unix, a setUid Das Programm erhält eine von seinem Anrufer ausgewählte Umgebung, aber es wird mit einer anderen Autorität von seinem Anrufer ausgeführt. Das Dynamischer Linker Laden Sie in der Regel Code von Orten, die von den Umgebungsvariablen angegeben sind $ Ld_library_path und $ Ld_preload und führen Sie es mit der Autorität des Prozesses aus. Wenn ein SetUid -Programm dies tun würde, wäre es unsicher, da sein Anrufer es dazu bringen könnte, willkürlicher Code auszuführen und damit seine Autorität zu missbrauchen. Deshalb, libc Setzen Sie diese Umgebungsvariablen beim Start in einem SetUID -Prozess ab. SETUID -Programme sind normalerweise unbekannte Umgebungsvariablen und überprüfen andere oder setzen sie auf vernünftige Werte ein.

Im Allgemeinen funktionieren die Sammlung von Umgebungsvariablen als Assoziatives Array wo sowohl die Schlüssel als auch Werte sind Zeichenfolgen. Die Interpretation von Zeichen in beiden Zeichenfolge unterscheidet sich zwischen Systemen. Wenn Datenstrukturen wie Listen dargestellt werden müssen, ist es üblich, einen Kolon (gemeinsam auf UNIX und UNIX-ähnlich) oder semikolon-deliminierter (häufig auf Windows und DOS) Liste zu verwenden.

Syntax

Die Variablen können sowohl in Skripten als auch auf dem verwendet werden Befehlszeile. Sie werden normalerweise darauf verwiesen, indem spezielle Symbole vor oder um den variablen Namen gestellt werden.

Es ist konventionell für Umgebungsvariablennamen, die ausgewählt werden können, um in allen oberen Fall zu sein. Im Allgemeinen hilft dies im Allgemeinen bei der Unterscheidung von Umgebungsvariablen von anderen Arten von Namen im Code. Bei UNIX-ähnlichen Betriebssystemen sind Umgebungsvariablennamen für Fall empfindlich, sind jedoch nicht auf DOS, OS/2 und Windows.

Unix

In den meisten Unix und Unix-ähnlich BefehlszeilenschalenDer Wert einer Umgebungsvariablen wird durch Platzierung a abgerufen $ Vor dem Namen der Variablen unterschreiben. Bei Bedarf kann der Name auch von Zahnspangen umgeben sein.

Um das Benutzer -Home -Verzeichnis anzuzeigen, kann der Benutzer eingeben:

Echo $ Home 

Wenn xyz musste an den Wert der angehängt werden HEIMAT Variable, man kann eingeben:

Echo $ {HEIMAT}xyz

In UNIX- und UNIX-ähnlichen Systemen sind die Namen von Umgebungsvariablen fallempfindlich.

Der Befehl env Zeigt alle Umgebungsvariablen und deren Werte an. Der Befehl drucken Kann auch verwendet werden, um eine einzelne Variable zu drucken, indem der Befehl diesen Variablennamen als alleiniges Argument angibt.

DOS, OS/2 und Windows

In DOS, OS/2- und Windows-Befehlszeileninterpretern wie z. Command.com und Cmd.exeEine Umgebungsvariable wird durch Platzierung a abgerufen % Unterschreiben Sie vor und danach.

In DOS, OS/2 und Windows Command-Line-Dolmetscher sowie deren APIDer obere oder untere Fall wird nicht für Umgebungsvariablennamen unterschieden.

Die Umgebungsvariable benannt Homedrive Enthält den Laufwerksbuchst : Dickdarm) des Heimverzeichnisses des Benutzers, während HomePath Enthält den vollständigen Pfad des Heimverzeichnisses des Benutzers in diesem Laufwerk.

Um das Heimlauf und Pfad zu sehen, kann der Benutzer dies eingeben:

ECHO %Homedrive %% HomePath% 

Der Befehl EINSTELLEN (ohne Argumente) Zeigt alle Umgebungsvariablen und deren Werte an. einstellen Kann auch verwendet werden, um alle Variablen zu drucken, deren Name mit einem bestimmten Präfix beginnt, indem der Präfix als alleiniger Argument für den Befehl angibt.

Im Windows PowerShellDer Benutzer kann dies eingeben:

Echo $ env: homedrive $ env: homepath 

Oder mit dem nativen Befehlsnamen von PowerShell entspricht dem gleichwertigen Namen Echo:

Reportput $ env: homedrive $ env: homepath 

In PowerShell wird der obere oder untere Fall nicht für Umgebungsvariablennamen unterschieden.

Der folgende Befehl zeigt alle Umgebungsvariablen und deren Werte an:

Get-Childitem env: 

Aufgabe: UNIX

Die Befehle env und einstellen Kann verwendet werden, um Umgebungsvariablen festzulegen, und werden häufig direkt in die Schale eingebaut.

Die folgenden Befehle können auch verwendet werden, sind jedoch häufig von einer bestimmten Schale abhängig.

VARIABLE=Wert         # Export VARIABLE        # zum Bourne und verwandte Muscheln
Export VARIABLE=Wert  # zum ksh, verprügeln, und verwandte Muscheln
setEnv VARIABLE Wert  # zum CSH und verwandte Muscheln

Einige einfache Prinzipien regeln, wie Umweltvariablen ihre Wirkung erzielen.

Umgebungsvariablen sind lokal zu dem Prozess, in dem sie festgelegt wurden. Wenn zwei Shell -Prozesse hervorgebracht werden und der Wert einer Umgebungsvariablen in einem geändert wird, wird diese Veränderung von der anderen nicht gesehen.

Wenn ein untergeordneter Prozess erstellt wird, erbt es alle Umgebungsvariablen und deren Werte aus dem übergeordneten Prozess. Wenn ein Programm ein anderes Programm anruft, wird normalerweise zuerst ein Kinderprozess von erstellt Gabelund dann passt das Kind die Umgebung nach Bedarf an und letztendlich das Kind ersetzt selbst mit dem Programm zu rufen. Dieses Verfahren gibt die aufrufende Programmsteuerung über die Umgebung des aufgerufenen Programms.

In Unix -Shells können Variablen ohne die zugewiesen werden Export Stichwort. Auf diese Weise definierte Variablen werden von der angezeigt einstellen Befehl, aber sind nicht Wahre Umgebungsvariablen, da sie nur von der Schale gespeichert werden und allen anderen Prozessen unbekannt sind. Das drucken Der Befehl wird nicht angezeigt, und Kinderprozesse erben sie nicht.

VARIABLE=Wert 

Die Präfix -Syntax exportiert eine "wahre" Umgebungsvariable für einen untergeordneten Prozess, ohne den aktuellen Prozess zu beeinflussen:[1]

VARIABLE=Wert Programm_Name [Argumente]

Die Persistenz einer Umgebungsvariablen kann Sitzungsweit oder systemweit sein.

ungehindert ist ein gebauter Befehl, der von beiden implementiert wird Bourne Shell Familie (Sch, ksh, verprügelnusw.) und die C Shell Familie (CSH, TCSH usw.) von UNIX -Befehlszeilenschalen. Es verändert eine Shell -Variable und entzieht sie aus dem Speicher und der exportierten Umgebung der Shell. Es wird als implementiert Muschel gebaut, weil es direkt die Interna der Hülle manipuliert.[2][3] Schreibgeschütze Shell-Variablen können nicht nicht festgelegt werden. Wenn man versucht, eine schreibgeschützte Variable abzubauen, die ungehindert Der Befehl druckt eine Fehlermeldung und gibt einen Exit-Code ungleich Null zurück.

Zuweisung: DOS, OS/2 und Windows

In DOS, OS/2- und Windows-Befehlszeileninterpretern wie z. Command.com und Cmd.exe, das EINSTELLEN Der Befehl wird verwendet, um Umgebungsvariablen und -Werte unter Verwendung der folgenden Argumente zuzuweisen:

Variable setzen = Wert

Eine Umgebungsvariable wird über:

Variable setzen =

Das EINSTELLEN Der Befehl ohne Argumente zeigt alle Umgebungsvariablen zusammen mit ihren Werten an. Setzen Sie "0 oder mehr Leerzeichen" zeigt auch die internen. Im Cmd.exeEs ist möglich, lokale Variablen zuzuweisen, die nicht draußen auslaufen, mit dem SetLocal Befehl.

Im Power ShellDie Zuordnung folgt einer Syntax ähnlich wie UNIX:

$ env: variable = "value"

Beispiele

Beispiele für Umgebungsvariablen sind:

  • WEG: Eine Liste der Verzeichnispfade. Wenn der Benutzer Geben Sie einen Befehl ein, ohne den vollständigen Pfad bereitzustellen. Diese Liste wird überprüft, ob er einen Pfad enthält, der zum Befehl führt.
  • HEIMAT (Unix-artig) und BENUTZERPROFIL (Microsoft Windows): Geben Sie an, wo der Benutzer eines Benutzers Heimverzeichnis befindet sich in der Dateisystem.
  • Home/{. AppName} (Unix-artig) und AppData \ {Developername \ Appname} (Microsoft Windows): Zum Speichern von Anwendungseinstellungen. Viele Anwendungen verwenden fälschlicherweise fälschlicherweise BENUTZERPROFIL Für Anwendungseinstellungen in Windows: BENUTZERPROFIL sollte nur in Dialogen verwendet werden, mit denen der Benutzer zwischen Pfaden wie wählen kann Dokumente/Bilder/Downloads/Musik; für programmatische Zwecke, ANWENDUNGSDATEN (Für Roaming -Anwendungseinstellungen, die über mehrere Geräte aufgeteilt wurden), LocalAppdata (für lokale Anwendungseinstellungen) oder Programmdaten (Für Anwendungseinstellungen, die zwischen mehreren Betriebssystemnutzern geteilt werden) sollte verwendet werden).[4]
  • BEGRIFF (Unix-artig): Gibt die Art von an Computerterminal oder Terminal-Emulator verwendet werden (z. B.,, VT100 oder Dumm).
  • PS1 (Unix-artig): Gibt an, wie die Eingabeaufforderung in der angezeigt wird Bourne Shell und Varianten.
  • Post (Unix-artig): Wird verwendet, um anzugeben, wo die Post eines Benutzers gefunden wird.
  • Temperatur: Ort, an dem Prozesse temporäre Dateien speichern können.

Wahre Umgebungsvariablen

Unix

$ Path
Enthält eine dicker getrennte Liste von Verzeichnissen, die die Shell nach Befehlen sucht, die keinen Schrägstrich in ihrem Namen enthalten (Befehle mit Schrägstrichen werden als Dateinamen für die Ausführung interpretiert, und die Shell versucht, die Dateien direkt auszuführen). Es entspricht dem DOS, OS/2 und Fenster %WEG% Variable.
$ Home
Enthält den Ort des Benutzers Heimverzeichnis. Obwohl das Heimverzeichnis des aktuellen Benutzers auch durch die C-Funktionen herausgefunden werden kann Getpwuid und Getuid, $ Home wird oft für Bequemlichkeit in verschiedenen Shell -Skripten (und anderen Kontexten) verwendet. Die Verwendung der Umgebungsvariablen gibt dem Benutzer auch die Möglichkeit, auf ein anderes Verzeichnis zu verweisen.
$ Pwd
Diese Variable zeigt auf das aktuelle Verzeichnis. Entspricht der Ausgabe des Befehls PWD, wenn er ohne Argumente aufgerufen wird.
$ Display
Enthält die Kennung für die Anzeige, die X11 Programme sollten standardmäßig verwenden.
$ Ld_library_path
Auf vielen Unix -Systemen mit a Dynamischer Linkerenthält eine dicker getrennte Liste von Verzeichnissen, nach denen der dynamische Linker suchen sollte gemeinsame Objekte Beim Erstellen eines Prozessbildes danach Geschäftsführer, bevor Sie in anderen Verzeichnissen suchen.
$ Libpath oder $ SHLIB_PATH
Alternativen zu $ Ld_library_path Typischerweise für ältere UNIX -Versionen verwendet.
$ Lang, $ lc_all, $ lc _...
$ Lang wird verwendet, um auf die Standardeinstellung einzustellen Gebietsschema. Zum Beispiel, wenn die Gebietsschemawerte sind pt_brDann wird die Sprache auf (brasilianische) portugiesische und brasilianische Praxis eingestellt, wo sie relevant sind. Unterschiedliche Aspekte der Lokalisierung werden vom Individuum kontrolliert $ Lc_-Variablen ($ Lc_ctype, $ Lc_collate, $ Lc_date etc.). $ Lc_all Kann verwendet werden, um das gleiche Gebietsschema für alle Aspekte zu erzwingen.
$ TZ
Bezieht sich auf Zeitzone. Es kann in mehreren Formaten sein, entweder die Zeitzone selbst angeben oder auf eine Datei verweisen (in /usr/share/zoneInfo).
$ Browser
Enthält eine dicker getrennte Liste eines Benutzers Webbrowser Präferenzen für die Verwendung durch Programme, die dem Benutzer ermöglichen müssen, Inhalte bei a anzuzeigen URL. Die Browser in der Liste sollen von First bis zuletzt versucht werden und nach dem ersten, der erfolgreich ist, anhalten. Diese Anordnung ermöglicht ein Fallback -Verhalten in verschiedenen Umgebungen, z. B. in einem X11 Umgebung, ein grafischer Browser (wie z. Feuerfuchs) kann verwendet werden, aber in einer Konsolenumgebung ein terminaler Basisbrowser (eine solche Luchs) kann verwendet werden. EIN %s Token kann vorhanden sein, um anzugeben, wo die URL platziert werden soll. Andernfalls sollte der Browser mit der URL als erstes Argument gestartet werden.[5][6][7][8][9]

DOS

Unter dos, die Meisterumgebung wird vom primären Befehlsprozessor bereitgestellt, der die erbt Vorumwelt definiert in Config.sys Beim ersten Laden. Seine Größe kann über die konfiguriert werden Befehl /e: n Parameter zwischen 160[10] und 32767[10] Bytes. Unmittelbare Umgebung Segmente, die an Kinderprozesse geerbt werden, werden typischerweise auf die Größe des von ihnen gehaltenen Inhalts reduziert. Einige Befehlszeilenprozessoren (wie 4dos) Erlauben Sie, eine minimale Menge an freien Umgebungsraum zu definieren, die beim Starten sekundärer Shells verfügbar sein wird.[10] Während der Inhalt der Umgebungsvariablen beim Speicher unverändert bleibt, sind ihre Namen (ohne die "unverändert.%") werden immer in Großbuchstaben umgewandelt, mit Ausnahme von Variablen vor der Umwelt definiert über die Config.sys Richtlinie EINSTELLEN unter Dr. DOS 6.0 und höher[11][12] (und nur mit Switches =/l (für "Namen von Kleinbuchstaben") unter DR-DOS 7.02 und höher).[10][13] Allgemein gesagt, MS-DOS 7.0 und höher unterstützt auch die Variablennamen von Kleinbuchstaben (%Windir%), bietet aber keine Möglichkeit für den Benutzer, sie zu definieren. Umgebungsvariablennamen, die Kleinbuchstaben enthalten, werden wie normale Umgebungsvariablen in der Umgebung gespeichert, bleiben jedoch für die meisten DOS -Software unsichtbar, da sie geschrieben werden, um nur Großbuchstaben zu erwarten.[10][11][12] Einige Befehlsprozessoren beschränken die maximale Länge eines variablen Namens auf 80 Zeichen.[10] Zwar hauptsächlich nur durch die Größe des Umgebungssegment, einige DOS- und 16-Bit-Windows-Programme[10][NB 1] Erwarten Sie nicht, dass der Inhalt von Umgebungsvariablen 128 Zeichen überschreitet. DR-DOS Command.com Unterstützt Umgebungsvariablen bis zu 255, 4dos Sogar bis zu 512 Zeichen.[10] Seit Command.com kann konfiguriert werden (über /L:128..1024) Um Befehlszahlen bis zu 1024 Zeichen intern unter MS-DOS 7.0 und höher zu unterstützen, sollten auch erwartet werden, dass Umgebungsvariablen mindestens 1024 Zeichen enthalten. In einigen Versionen von DR-DOS kann die Umgebung an Fahrer übergeben, die ihre Umgebung nach der Installation häufig nicht benötigen umgesiedelt durch SetEnv oder [Hoch] installieren/Loadhigh Optionen /Z (Nullumgebung), /D [: loadDrive] (Ersatzfahrung, z. B: TSR.com) und /E (Umwelt oben über Programm verlagern), um den Fahrerspeicher zu minimieren, um den Fahrer effektiv zu minimieren.[14][13][11][15][16][17]

Im Stapelmodus werden nicht existierende Umgebungsvariablen durch eine String mit Null-Länge ersetzt.

Standardumgebungsvariablen oder Reservierte Umgebungsvariablen enthalten:

%%%Anhängen (unterstützt seit DOS 3.3)
Diese Variable enthält eine Semikolon-delimitierte Liste von Verzeichnissen, in denen nach Dateien gesucht werden soll. Es wird normalerweise über die verändert Anhängen /e Befehl, der auch sicherstellt, dass die Verzeichnisnamen in Großbuchstaben konvertiert werden. Einige DOS -Software erwarten tatsächlich, dass die Namen in Großbuchstaben und der Länge der Liste nicht mehr als 121 gespeichert werden.[10] Zeichen, daher wird die Variable am besten nicht über die geändert EINSTELLEN Befehl. Lange Dateinamen Das Enthaltende von Räumen oder anderen Sonderzeichen darf nicht zitiert werden (").
%Config% (seitdem unterstützt MS-DOS 6.0 und PC DOS 6.1, auch unterstützt von Rom-Dos[18])
Diese Variable enthält den symbolischen Namen der aktuell ausgewählten Startkonfiguration. Es wird von der festgelegt Dos bios (Io.sys, Ibmbio.comusw.) zu dem von dem entsprechenden Namen definierten Namen Config.sys Richtlinie Menuitem Vor dem Start des primären Befehlsprozessors. Der Hauptzweck ist es, weitere Sonderfälle in zuzulassen Autoexec.bat und ähnliche Batchjobs, abhängig von der ausgewählten Option zum Startzeit. Dies kann unter DR-DOS durch Verwendung der emuliert werden Config.sys Richtlinie EINSTELLEN wie Setzen Sie config = 1.
%Cmdline% (eingeführt mit 4dos, auch seitdem unterstützt MS-DOS 7.0)
Diese Variable enthält den vollständig erweiterten Text der derzeit ausführenden Befehlszeile. Es kann von Anwendungen gelesen werden PSP (Oder verwandt API Funktionen) ist auf 126 Zeichen begrenzt und nicht mehr verfügbar, wenn FCBS sich erweitern lassen oder die Standardeinstellung Dta wird genutzt. Während 4DOs längere Befehlszeilen unterstützt, Command.com stand nur maximal 126 Zeichen bei der Eingabeaufforderung standardmäßig (sofern nicht mit überschrieben /U:128..255 So geben Sie die Größe des Befehlszeilenpuffer an), aber dennoch können interne Befehlszeilen über F.E. variable Expansion (je nachdem /L:128..1024 um die Größe des internen Puffers anzugeben). Zusätzlich zum Befehlszeilenlängen-Byte in der PSP ist die PSP-Befehlszeile normalerweise durch ASCII-13und Befehlszeilen länger als 126 Zeichen werden normalerweise durch Einfügung eines ASCII-13 an Position 127 abgeschnitten.[12] Dies kann sich jedoch nicht in allen Szenarien verlassen.[12][NB 2] Die Variable wird für externe Befehle unterdrückt, die mit einem vorhergehenden aufgerufen werden @-Symbol wie in @Xcopy ... Für die Rückwärtskompatibilität und um die Größe der Umgebung beim Laden von Nicht-Relozieren zu minimieren TSRs. Einige Beta -Versionen von Windows Chicago Gebraucht %Cmdline% So speichern Sie nur den Rest der Befehlszeile, die 126 Zeichen anstelle der vollständigen Befehlszeile überschüssiges überschüssig überschüssig ist.[11][12]
%Comspec% (unterstützt seit DOS 2.0)
Diese Variable enthält die volle 8.3 Weg zum Befehlsprozessor, normalerweise C: \ command.com oder C: \ dos \ command.com. Es darf nicht enthalten Lange Dateinamen, aber unter DR-DOS kann es Datei- und Verzeichniskennwörter enthalten. Es wird vom primären Befehlsprozessor eingerichtet, um auf sich selbst zu verweisen (typischerweise die Einstellungen des Config.sys Richtlinie HÜLSE), so dass der ansässige Teil des Befehlsprozessors seinen transienten Teil nach der Ausführung größerer Programme von der Festplatte neu laden kann. Der Wert kann zur Laufzeit geändert werden, um Änderungen in der Konfiguration widerzuspiegeln, wodurch der Befehlsprozessor sich von anderen Standorten neu laden muss. Die Variable wird auch beim Starten von Sekundärschalen verwendet.
%Copycmd% (seitdem unterstützt MS-DOS 6.2 und PC DOS 6.3, auch unterstützt von Rom-Dos[18])
Ermöglicht einem Benutzer, die anzugeben /Y Schalter (um "Ja" bei Fragen zu übernehmen) als Standard für die KOPIEREN, Xcopy, und BEWEGUNG Befehle. Ein Standard von /Y kann durch Lieferung der überschrieben werden /-Y Schalten Sie die Befehlszeile ein. Das /Y Switch weist den Befehl an, vorhandene Dateien ohne Bestätigung zu ersetzen.
%Dircmd% (seitdem unterstützt MS-DOS 5.0 und PC DOS 5.0, auch unterstützt von Rom-Dos[18])
Ermöglicht einem Benutzer, benutzerdefinierte Standardparameter für die anzugeben Dir Befehl, einschließlich Dateispezifikationen. Voreingestellte Standardschalter können überschrieben werden, indem der negative Schalter in der Befehlszeile bereitgestellt wird. Zum Beispiel wenn %Dircmd% enthält die /W Schalter, dann kann es durch Verwendung überschrieben werden Dir /-W in der Befehlszeile. Dies ähnelt der Umgebungsvariablen %$ Dir% unter Dos plus[19] und eine Einrichtung zum Definieren von Standardschaltern für Dir durch seine /C oder /R Schalter unter DR-DOS Command.com.[11] %Dircmd% wird auch vom externen unterstützt Sdir.com/Dir.com Stapler Befehle unter Novell DOS 7 und höher.[11]
%Lang% (seitdem unterstützt MS-DOS 7.0)
Diese Variable wird von einigen Tools unterstützt, um das Gebietsschema für Nachrichten in mehrsprachigen Problemen zu wechseln.
%Langspec% (seitdem unterstützt MS-DOS 7.0)
Diese Variable wird von einigen Tools unterstützt, um das Gebietsschema für Nachrichten in mehrsprachigen Problemen zu wechseln.
%No_sep% (seitdem unterstützt PC DOS 6.3 und DR-DOS 7.07)
Diese Variable steuert die Anzeige von Tausende Trennzeichen in Nachrichten verschiedener Befehle. Standardmäßig ausgegeben, können sie durch Angabe unterdrückt werden Setzen Sie NO_SEP = on oder Setzen Sie NO_SEP = 1 Unter PC dos. DR-DOS ermöglicht zusätzlich, den Tausenden-Separator des Systems wie in F.E. Setzen Sie NO_SEP =..[10]
%WEG% (unterstützt seit DOS 2.0)
Diese Variable enthält eine semikolon-delimitierte Liste von Verzeichnissen, in denen die Befehlsinterpreter wird suchen ausführbare Dateien. Äquivalent der Unix $ Path Variable (aber einige DOS- und Windows -Anwendungen verwenden auch die Liste, um nach Datendateien zu suchen, die ähnlich sind wie $ Ld_library_path auf Unix-ähnlichen Systemen). Es wird normalerweise über die verändert WEG (oder Pfad /e unter MS-DOS 6.0) Befehl, der auch sicherstellt, dass die Verzeichnisnamen in Großbuchstaben konvertiert werden. Einige DOS -Software erwarten tatsächlich, dass die Namen in Großbuchstaben und der Länge der Liste nicht mehr als 123 gespeichert werden.[10] Figuren,[NB 1] Daher sollte die Variable besser nicht über die geändert werden EINSTELLEN Befehl.[10] Lange Dateinamen Das Enthaltende von Räumen oder anderen Sonderzeichen darf nicht zitiert werden ("). Standardmäßig wird das aktuelle Verzeichnis zuerst durchsucht, einige Befehlszeilenprozessoren mögen es jedoch 4dos ermöglichen "."(Für" aktuelles Verzeichnis ") auch in die Liste aufgenommen werden, um diese Suchreihenfolge zu überschreiben; einige DOS -Programme sind mit dieser Erweiterung unvereinbar.[10]
%PROMPT% (unterstützt seit DOS 2.0)
Diese Variable enthält a $-Tokenisierte Zeichenfolge, die die Anzeige der definiert prompt. Es wird normalerweise über die verändert PROMPT Befehl.
%Temp% (und %TMP%)
Diese Variablen enthalten den Pfad zum Verzeichnis, wo temporäre Dateien sollte gelagert werden. Betriebssystem -Tools verwenden normalerweise nur nur %Temp%während auch Programme von Drittanbietern verwenden %TMP%. Normalerweise %Temp% Nimmt Vorrang vor %TMP%.

Das DR-DOS Familie unterstützt eine Reihe zusätzlicher Standardumgebungsvariablen einschließlich:

%BETA%
Diese Variable enthält eine optionale Nachricht, die von einigen Versionen angezeigt wird (einschließlich Dr. DOS 3.41) von Command.com Beim Start von Sekundärschalen.[20]
%DRDOSCFG%/%Nwdoscfg%/%Opendoscfg%
Diese Variable enthält das Verzeichnis[21] (ohne nachzuschlägen "\") wohin man suchen soll .Ini und .Cfg Konfigurationsdateien (dh anwendungsspezifische Dateien der DR-DOS Taskmgr.ini, Taskmax.ini, Viewmax.ini, Fastback.cfg usw., klassenspezifische Dateien mögen Farben.ini, oder globale Dateien wie Drdos.ini, Nwdos.ini, Opendos.ini, oder Dos.ini), wie von der verwendet INSTALLIEREN und KONFIGURATION Befehle und verschiedene DR-DOS-Programme wie Diskop, Dosbook, BEARBEITEN, FBX, Filelink, SPERREN, Security.ovl/Nwlogin.exe, Serno, Taskmax, Taskmgr, ViewMax, oder Wahnsinnig.[11] Es darf nicht enthalten Lange Dateinamen.
%Drccomspec%
Diese Variable enthält optional einen alternativen Pfad zum Befehlsprozessor, der Vorrang vor dem in der definierten Pfad hat %Comspec% Variable, optional einschließlich Datei- und Verzeichniskennwörter. Alternativ kann es einen besonderen Wert von "haben"AN" oder "1"Um die Verwendung der Nutzung durchzusetzen %Comspec% variabel auch in Szenarien, in denen die %Comspec% Variable kann auf den falschen Befehlszeilenprozessor hinweisen, beispielsweise beim Ausführen einiger Versionen des DR-DOS Sys Befehl unter einem fremden Betriebssystem.[22]
%Drsys%
Festlegen dieser Variablen auf "AN" oder "1"Wird einige Versionen des DR-DOS erzwingen Sys Befehl zur Arbeit unter ausländischen Betriebssystemen, anstatt eine Warnung anzuzeigen.[22]
%Fbp_user%
Gibt den von der verwendeten Benutzernamen an Fastback Befehl FBX und {Benutzer} .fb Konfigurationsdateien unter Novell DOS 7.[11]
%Homedir%
Diese Variable kann das Heimverzeichnis unter DR-DOS (einschließlich Dr. DOS 5.0 und 6.0).[11][20]
%DIE INFO%
In einigen Versionen von DR-DOS Command.com Diese Variable definiert die von der angezeigte Zeichenfolge $ I Token der PROMPT Befehl.[20] Es kann beispielsweise verwendet werden, um den Benutzer zu informieren, wie sie sekundäre Shells beenden.
%BENUTZERNAME%
In einigen Versionen von DR-DOS Command.com Diese Variable definiert den von der angezeigten Benutzernamen $ U Token der PROMPT Befehl, wie von F.E. Login -Skripte für Novell Netware.[10][11][20] Siehe auch die ähnlich benannte Pseudo-Variable %BENUTZERNAME%.
%Mdos_exec%
Diese Variable kann die Werte nehmen "AN" oder "AUS" unter Multiuser dos. Wenn es aktiviert ist, ermöglicht das Betriebssystem die Anwendungen, um mit dem DOS -Programmbereich (DPA) in Sekundärschalen zu schalen, um einen maximalen DOS -Speicher für sekundäre Anwendungen zur Verfügung zu haben, anstatt sie in derselben Domäne wie unter DOS auszuführen.[23][24]
%Nochar%
Diese Variable kann verwendet werden, um das Zeichen zu definieren, das von einigen Befehlen in Nachrichten für "Nein" in angezeigt wird [Y, n] Abfragen, wodurch der aktuelle System Standard (typischerweise "überschrieben wird.N"In englischen Versionen von DR-DOS). Wenn es eine Zeichenfolge enthält, wird nur das erste Zeichen, das oberflächlich ist, genommen. Einige Befehle unterstützen auch einen Befehlszeilenparameter /Y Um automatisch "Ja" bei Fragen anzunehmen, wodurch solche Eingabeaufforderungen unterdrückt werden. Wenn jedoch der Parameter /Y: yn wird verwendet, um die "Ja"/"Nein" -Perkmale anzugeben (dadurch überschreibt alle %Nochar% Einstellung), Abfragen werden nicht unterdrückt. Siehe auch die verwandten Config.sys Richtlinie Nochar und die Umgebungsvariable %Jachar%.[22]
%KEINEN TON%
Festlegen dieser Variablen auf "AN" oder "1"Deaktivieren Sie Standard-Bepeps, die von einigen DR-DOS-Befehlen in bestimmten Situationen ausgegeben werden, z. wird diese Einstellung überschreiben.
%OS%
Diese Variable enthält den Namen des Betriebssystems, um zwischen verschiedenen DOS-bezogenen Betriebssystemen von zu unterscheiden Digitale Forschung-Origin in Stapeljobs und -anwendungen.[21] Bekannte Werte umfassen "Dosplus"(DOS plus 1.2 in dosemulation) ",", "CPCDOS 4.1"(DOS plus 1,2 in CP/m Emulation) ",", "DR-DOS"(Dr. DOS 3.31-6.0, Dr. Dos Panther, Dr. Dos Startrek, DR-DOS 7.02[21]-7.05) ","Ezdos"(EZ-DOS 3.41) ","Palmdos" und "NetWare Palmdos"(Palmdos 1.0) ","NWDOS"(Novell DOS 7) ","NWDOS7"(Novell DOS 7 Beta)", "Opendos"(Caldera Opendos 7.01, Caldera DR-Opendos 7.02) ","CDOs"(Gleichzeitige dos, Gleichzeitiger dos xm) ","CPCDOS"(Gleichzeitige PC -DOS) ","CDOS386"(Gleichzeitige DOS 386) ","DRMDOS"(Dr. Multiuser dos) ","MDOs"(CCI Multiuser dos),[23] "IMSMDOS"(IMS Multiuser dos) ","Real32"(Real/32).[11][25] MS-DOS Intersvr sucht nach einem Wert von "DR-DOS" auch.[25] Siehe auch die identisch benannte Umgebungsvariable %OS% später eingeführt in der Windows NT -Familie.
%Pexec%
In einigen Versionen von DR-DOS definiert diese Variable den von der ausgeführten Befehl $ X Token der PROMPT Befehl vor Command.com Zeigt die Eingabeaufforderung nach der Rückkehr aus der externen Programmausführung an.[11][21]
%Switchar%
Diese Variable definiert die Switchar zum Argumentieren von einigen DR-DOS-Befehlen verwendet werden. Wenn es definiert ist, überschreibt es die aktuelle Switchar -Einstellung des Systems. Die einzigen akzeptierten Charaktere sind "/"(Dos stil)", "-"(Unix -Stil) und"["(CP/M -Stil). Siehe auch die verwandten Config.sys Richtlinie Switchar (Um die Switchar -Einstellung des Systems einzustellen) und die %/% Systeminformationsvariable In einigen Fragen der DR-DOS Command.com (Um die aktuelle Einstellung für tragbare Batchjobs abzurufen).
%Taskmgrwindir%
Diese Variable gibt das Verzeichnis an, wobei die Fenster System.ini von der DR-DOS verwendet werden Taskmgr Multitasker befindet sich und überschreibt das Standardverfahren, um die Datei zu finden.[11]
%Ver%
Diese Variable enthält die Version des Betriebssystems, um zwischen verschiedenen Versionen von DR-DOS in Stapeljobs und in der Anzeige des Ver Befehl.[21] Es wird auch für die verwendet $ V Token der PROMPT Befehl und beeinflusst den von der zurückgegebenen Wert Systeminformationsvariable %OS VERSION%. Bekannte Werte umfassen "1.0"(Palmdos 1.0) ","1.2"(DOS plus 1.2 in dosemulation) ",", "2.0"(Gleichzeitige DOS 386 2.0) ","3.0"(Gleichzeitige DOS 386 3.0) ","3.31"(Dr. DOS 3.31) ","3.32"(Dr. DOS 3.32) ","3.33"(Dr. DOS 3.33) ","3.34"(Dr. DOS 3.34) ","3.35"(Dr. DOS 3.35) ","3.40"(Dr. DOS 3.40) ","3.41"(Dr. DOS 3.41, EZ-DOS 3.41) ","3.41t"(DR DOS 3.41T) ","4.1"(Gleichzeitiger PC DOS 4.1) ","5.0"(Dr. DOS 5.0, Dr. Multiuser dos 5.0) ","5.1"(Novell Dr. Multiuser DOS 5.1) ","6.0"(DR DAUS DOS XM 6.0, Dr. DOS 6.0) ","6.2"(DR DAUS DOS XM 6.2) ","7"(Novell DOS 7, Caldera Opendos 7.01, DR-DOS 7.02-7.05) ","7.00"(CCI Multiuser DOS 7.00) ","7.07"(DR-DOS 7.07) ","7.1"(IMS Multiuser DOS 7.1) ","7.21"(CCI Multiuser DOS 7.21),[23] "7.22"(CCI Multiuser DOS 7.22) etc.[11][25][23]
%Jachar%
Diese Variable kann verwendet werden, um das Zeichen zu definieren, das von einigen Befehlen in Nachrichten für "Ja" in angezeigt wird [Y, n] Abfragen, wodurch der aktuelle System Standard (typischerweise "überschrieben wird.Y"In englischen Versionen von DR-DOS). Wenn es eine Zeichenfolge enthält, wird nur das erste Zeichen, das oberflächlich ist, genommen. Einige Befehle unterstützen auch einen Befehlszeilenparameter /Y Um automatisch "Ja" bei Fragen anzunehmen, wodurch solche Eingabeaufforderungen unterdrückt werden. Wenn jedoch der Parameter /Y: y wird verwendet, um das Zeichen "Ja" anzugeben (dadurch überschreiben Sie alle %Jachar% Einstellung), Abfragen werden nicht unterdrückt. Siehe auch die verwandten Config.sys Richtlinie Jachar und die Umgebungsvariable %Nochar%.[22]
%$ CLS%
Diese Variable definiert die Steuersequenz, die an den Konsolen -Treiber gesendet werden soll, um den Bildschirm zu löschen, wenn der Cls Der Befehl wird ausgestellt, wodurch der interne Standard überschaltet wird ("← [2J"Unter Dr-dos,"← e" unter DOS plus 1.2 auf Amstrad -Maschinen[19] sowie unter Gleichzeitige dos, Multiuser dos, und Real/32 zum VT52 Terminals oder "←+"Unter mehreren Dos für Multiuser ASCII Terminals).[23] Wenn die Variable nicht definiert ist und nein Ansi.sys Konsolenfahrer wird erkannt, der DR-DOS Command.com löscht den Bildschirm direkt durch Int 10h/ah = 00H BIOS Funktion wie MS-DOS/PC DOS Command.com tut. Ein besonderer \ nnn-Notation für Oktalzahlen wird unterstützt, um die Definition von Sonderzeichen wie ESC zu ermöglichen (Ascii-27 = "←" = 1bh = 33o), als F.E. in Setzen Sie $ cls = \ 033 [2J. Um den Backslash zu senden ("\") selbst kann es verdoppelt werden"\\".[11][20][23]
%$ Dir%
Unterstützt durch Dos plus Akzeptieren der Werte "l" (lang) oder "w" (breit), um das Standardlayout von Verzeichnislisten mit zu ändern Dir. Kann mit den Befehlszeilenoptionen überschrieben werden /L oder /W.[20][19] Siehe auch die ähnliche Umgebungsvariable %Dircmd% und die Dir Optionen /C und /R des DR-Dos Command.com.[11]
%$ Page%
Unterstützt durch Dos plus Annahme der Werte "AN" oder "AUS"Zur Paginationskontrolle. Setzen Sie dies auf"AN"Hat den gleichen Effekt wie das Hinzufügen /P Befehle, die es unterstützen (wie Dir oder TYP).[20][19]
%$ Länge%
Benutzt von Dos plus Definieren Sie die Bildschirmlänge der Konsole in Zeilen. Dies wird verwendet, um tragbar zu steuern, wenn der Bildschirmausgang vorübergehend angehalten werden sollte, bis eine Taste in Verbindung mit dem gedrückt wird /P Option unterstützt durch verschiedene Befehle oder mit automatischer Pagninierung.[20][19] Siehe auch die zugehörigen Umgebungsvariablen %$ Width% und %Dirsize% sowie das ähnliche pseudo-variable %_REIHEN%.
%$ Width%
Benutzt von Dos plus Definieren Sie die Bildschirmbreite der Konsole in Spalten. Dies wird verwendet, um die Formatierung der Bildschirmausgabe von Befehlen auf tragbare Weise zu steuern Dir /w oder Geben Sie den Dateinamen ein.[20][19] Siehe auch die zugehörigen Umgebungsvariablen %$ Länge% und %Dirsize% sowie das ähnliche pseudo-variable %_SÄULEN%.
%$ Slice%
Benutzt von Dos plus Akzeptieren eines numerischen Werts zur Steuerung des Vordergrund-/Hintergrundzeitschneide von Multitasking -Programmen.[20][19] Siehe auch den Befehl dos plus SCHEIBE.
%$ Bei%
Diese Variable kann eine optionale Steuersequenz aufbewahren, um Text hervorzuheben, umzukehren oder zu färben. Es wird verwendet, um die Anzeige der Dateinamen in Befehlen wie zu betonen oder auf andere Weise zu steuern Geben Sie Platzhalter ein, zum Beispiel Setzen Sie $ on = \ 033 [1m mit Ansi.sys geladen oder Setzen Sie $ auf = \ 016 für ein IBM oder Esc/p Drucker. Für das Special \ nnn Oktal Notation unterstützt, siehe %$ CLS%.[11][19] Während die Variable unter DOS Plus und DR-DOS standardmäßig undefiniert ist, ist die Multiuser dos Standard für an ASCII terminal gleich Setzen Sie $ auf = \ 033p.[20][23] Siehe auch die verwandte Umgebungsvariable %$ Off%.
%$ Off%
Diese Variable kann eine optionale Steuersequenz enthalten, um Text hervorzuheben, umzukehren oder zu färben. Es wird verwendet, um nach der Anzeige von Dateinamen in Befehlen wie zum normalen Ausgang zurückzukehren Geben Sie Platzhalter ein, zum Beispiel Setzen Sie $ off = \ 033 [0m mit Ansi.sys geladen oder $ Off = \ 024 einstellen für ein IBM oder Esc/p Drucker. Für das Special \ nnn Oktal Notation unterstützt, siehe %$ CLS%.[11][19] Während die Variable unter DOS Plus und DR-DOS standardmäßig undefiniert ist, ist die Multiuser dos Standard für an ASCII terminal gleich Setzen Sie $ off = \ 033q.[20][23] Siehe auch die verwandte Umgebungsvariable %$ Bei%.
%$ Header%
Diese Variable kann eine optionale Steuersequenz enthalten, die vor der Ausgabe des Dateiinhalts in Befehlen wie TYP unter DR-DOS 7.02 und höher. Es kann zum Hervorheben, Paginierung oder Formatieren verwendet werden, F.E. Beim Senden der Ausgabe an einen Drucker, d.h. Setzen Sie $ header = \ 017 für ein IBM oder Esc/p Drucker. Für das Special \ nnn Oktal Notation unterstützt, siehe %$ CLS%.[20] Siehe auch die verwandte Umgebungsvariable %$ Fußzeile%.
%$ Fußzeile%
Diese Variable kann eine optionale Steuersequenz halten, die nach der Ausgabe des Dateiinhalts in Befehlen wie ausgegeben wird TYP unter DR-DOS 7.02 und höher. Es wird verwendet, um zum normalen Ausgangsformat zurückzukehren, d.h. Setzen Sie $ footer = \ 022 \ 014 Im obigen Druckerbeispiel. Für das Special \ nnn Oktal Notation unterstützt, siehe %$ CLS%.[20] Siehe auch die verwandte Umgebungsvariable %$ Header%.

Datalight ROM-DOS Unterstützt eine Reihe zusätzlicher Standardumgebungsvariablen auch einschließlich:

%Dirsize%
Diese Variable wird verwendet, um nicht standardmäßige Bildschirmgrößen zu definieren Reihen [, Cols] zum Dir Optionen /P und /W (ähnlich zu %$ Länge% und %$ Width% unter dos plus).[18]
%NEUE DATEI%
Diese Variable wird automatisch auf den ersten Parameter festgelegt, der der Anweisung config.sys gegeben wurde NEUE DATEI.[18]

%TZ%, %Comm%, %STECKDOSEN%, %Http_dir%, %Hostname% und %Ftpdir% werden auch von Rom-dos verwendet.[18]

OS/2

%BeginlibPath%
Enthält eine semikolon getrennte Liste von Verzeichnissen, die nach gesucht werden Dlls Vor die Verzeichnisse der %Libpath% Variable (die beim Systemstart mit dem Special festgelegt wird Config.sys Richtlinie Libpath). Hier ist es möglich, relative Verzeichnisse anzugeben, einschließlich "."Für das aktuelle Arbeitsverzeichnis. Siehe auch die verwandte Umgebungsvariable %EndlibPath%.
%EndlibPath%
eine Liste von Verzeichnissen, nach denen gesucht werden sollte Dlls wie %BeginlibPath%, aber gesucht nach die Liste der Verzeichnisse in %Libpath%.

Fenster

Systempfadvariablen Beziehen Sie sich auf Orte kritischer Betriebssystemressourcen und sind als solche im Allgemeinen nicht benutzerabhängig.

%ANWENDUNGSDATEN%
Enthält den vollen Weg zur Anwendungsdaten Verzeichnis des protokollierten Benutzers. Funktioniert nicht unter Windows NT 4.0 SP6 UK.
%LocalAppdata%
Diese Variable sind die temporären Dateien von Anwendungen. Zu seinen Verwendungen gehört das Speichern von Desktop -Themen, Windows -Fehlerberichterstattung, Caching und Profile von Webbrowsern.
%Comspec%/%Comspec%
Das %Comspec% Die Variable enthält den vollständigen Pfad zum Befehlsprozessor; Auf der Windows NT -Familie von Betriebssystemen ist dies der Fall cmd.exe, während eingeschaltet Windows 9x, %Comspec% ist Command.com.
%OS%
Das %OS% Die Variable enthält einen symbolischen Namen der Familie der Betriebssystem, um zwischen unterschiedlichen Merkmalssätzen in zu unterscheiden Batchjobs. Es ähnelt einer identisch benannten Umgebungsvariablen %OS% gefunden in allen DOS-bezogenen Betriebssystemen von Digitale Forschung-Origin wie gleichzeitige dos, Multiuser dos, Real/32, Dos plus, Dr. Dos, Novell Dos und Opendos. %OS% Hält immer die Zeichenfolge "Windows_nt" auf der Windows NT -Familie.[26]
%WEG%
Diese Variable enthält eine Semikolon-Delimited (keine Leerzeichen dazwischen) Verzeichnisse, in denen der Befehlsinterpreter nach einer ausführbaren Datei sucht, die mit dem angegebenen Befehl übereinstimmt. Umgebungsvariablen, die Pfade darstellen %WEG% Variable, aber nur auf einer Ebene der Indirektion. Wenn diese Umgebungsvariable der Unterwahl selbst eine Umgebungsvariable enthält, die einen Pfad darstellt, ist %WEG% wird in der variablen Substitution nicht ordnungsgemäß erweitert. Äquivalent zu der Unix $ Path Variable.
%Programmdateien%, %Programmdatei (x86)%, %Programmw6432%
Das %Programmdateien% variable Punkte auf die Programmdateien Verzeichnis, das alle installierten Programme von Windows und anderen speichert. Die Standardeinstellung bei englischsprachigen Systemen ist "C: \ Programmdateien". In 64-Bit-Editionen von Windows (XP, 2003, Vista) gibt es auch %Programmdatei (x86)%, welches standardmäßig "ist"C: \ Programme (x86)", und %Programmw6432%, welches standardmäßig "ist"C: \ Programmdateien". Das %Programmdateien% selbst hängt davon ab, ob der Prozess, der die Umgebungsvariable anfordert Windows-on-Windows 64-Bit Umleitung).
%CommonProgramfiles%
Diese Variable zeigt auf die Gemeinsame Dateien Verzeichnis. Der Standard ist "C: \ Programme \ Common Dateien"In der englischen Version von Windows.
%Eine Fahrt%
Das %Eine Fahrt% Variable ist eine spezielle systemweite Umgebungsvariable, die unter Windows NT und seinen Derivaten zu finden ist. Sein Wert ist der Weg, in dem sich das OneDrive -Verzeichnis befindet (falls installiert und eingerichtet). Der Wert von %Eine Fahrt% ist in den meisten Fällen "C: \ Benutzer \ {Benutzername} \ OneDrive \".
%SystemDrive%
Das %SystemDrive% Variable ist eine spezielle systemweite Umgebungsvariable, die unter Windows NT und seinen Derivaten zu finden ist. Sein Wert ist das Laufwerk, auf dem das Systemverzeichnis platziert wurde. Der Wert von %SystemDrive% ist in den meisten Fällen "C:".
%System Root%
Das %System Root% Variable ist eine spezielle systemweite Umgebungsvariable, die in der Windows NT-Familie von Betriebssystemen zu finden ist. Sein Wert ist der Standort des Systemverzeichnisses, einschließlich des Laufwerks und des Pfades. Das Laufwerk ist das gleiche wie %SystemDrive% und der Standardpfad für eine Reinigungsinstallation hängt von der Version des Betriebssystems ab. Standardmäßig:
%Windir%
Diese Variable zeigt auf die Fenster Verzeichnis. (Auf der Windows NT -Familie von Betriebssystemen ist es identisch mit dem %System Root% Variable). Windows 95-98 und Fenster mich werden standardmäßig in "installiert" installiert "C: \ Windows". Für andere Windows -Versionen siehe die %System Root% Eingabe oben.

Benutzerverwaltungsvariablen Speichern Sie Informationen zu Ressourcen und Einstellungen im Besitz verschiedener Benutzerprofil innerhalb des Systems. In der Regel beziehen sich diese Variablen nicht auf kritische Systemressourcen oder Standorte, die für den Betrieb des Betriebssystems erforderlich sind.

%AlusersProfile% (%ProgrammData% Seit Windows Vista)
Diese Variable erweitert sich auf den vollständigen Weg zur Alle Nutzer Profilverzeichnis. Dieses Profil enthält Ressourcen und Einstellungen, die von allen Systemkonten verwendet werden. Abkürzung Links kopiert auf die Alle Nutzer\ ' Startmenü oder Desktop Verzeichnisse werden in jedem Benutzern angezeigt Startmenü oder Desktop, beziehungsweise.
%UserDomain%
Der Name des Arbeitsgruppe oder Windows -Domain zu dem der aktuelle Benutzer gehört. Die damit verbundene Variable, %Logonserver%hält die Hostname des Servers, der die Anmeldeinformationen des aktuellen Benutzers (Name und Kennwort) authentifizierte. Für Home -PCs und PCs in einer Arbeitsgruppe ist der authentifizierende Server normalerweise der PC selbst. Für PCs in einer Windows -Domäne ist der authentifizierende Server a Domänencontroller (Ein primärer Domänencontroller oder PDC in Windows NT 4-basierten Domänen).
%BENUTZERPROFIL%
Eine spezielle systemweite Umgebungsvariable, die unter Windows NT und seinen Derivaten gefunden wurde. Der Wert ist der Standort des aktuellen Benutzerverzeichnisses des Benutzers, in dem festgestellt wird, dass der HKCU -Registrierungs -Hive des Benutzers (Ntuser). Benutzer können auch die verwenden %NUTZERNAME% Variable, um die Anmeldung der aktiven Benutzer zu bestimmen.

Optionale Systemvariablen werden standardmäßig nicht explizit angegeben, können jedoch verwendet werden, um das Standardverhalten bestimmter integrierter Konsolenbefehle zu ändern. Diese Variablen müssen auch nicht explizit als Befehlszeilenargumente angegeben werden.

Standardwerte

Die folgenden Tabellen zeigen typische Standardwerte bestimmter Umgebungsvariablen unter englischen Windows -Versionen, wie sie abgerufen werden können CMD.

(Einige dieser Variablen werden auch beim Laufen definiert Command.com unter Windows, unterscheiden sich jedoch in bestimmten wichtigen Details: unter Command.comDie Namen der Umgebungsvariablen sind immer oberflächlich. Einige, aber nicht alle Variablen enthalten kurz 8.3 statt Lange Dateinamen. Während einige Variablen in der vorhanden sind CMD Umgebung fehlt, es gibt auch einige Variablen, die für die spezifisch sind BEFEHL Umgebung.)

Variable Gebietsschema spezifisch Windows XP (CMD) Windows Vista und später (CMD)
%AlusersProfile%[27] Ja C: \ Dokumente und Einstellungen \ alle Benutzer C: \ programmdata[27]
%ANWENDUNGSDATEN%[27] Ja C: \ Dokumente und Einstellungen \ {Benutzername} \ Anwendungsdaten C: \ Benutzer \ {Benutzername} \ AppData \ Roaming[27]
%CommonProgramfiles%[27] Ja C: \ Programme \ Common Dateien C: \ Programme \ Common Dateien[27]
%CommonProgramFiles (x86)%[27] Ja C: \ Programmdateien (x86) \ gemeinsame Dateien (Nur in 64-Bit-Version) C: \ Programmdateien (x86) \ gemeinsame Dateien (Nur in 64-Bit-Version)[27]
%CommonProgramw6432%[27] Ja %CommonProgramw6432% (Nicht unterstützt, nicht durch einen Wert ersetzt) C: \ Programme \ Common Dateien (Nur in 64-Bit-Version)[27]
%COMPUTERNAME% Nein {Computername} {Computername}
%Comspec% Nein C: \ Windows \ System32 \ cmd.exe C: \ Windows \ System32 \ cmd.exe
%Homedrive%[27] Nein C: C:[27]
%HomePath%[27] Ja \ Dokumente und Einstellungen \ {Benutzername} \ User \ {Benutzername}[27]
%LocalAppdata%[27] Ja %LocalAppdata% (Nicht unterstützt, nicht durch einen Wert ersetzt) C: \ Benutzer \ {Benutzername} \ appdata \ local[27]
%Logonserver% Nein \\ {domain_logon_server} \\ {domain_logon_server}
%WEG% Ja C: \ Windows \ System32; C: \ Windows; C: \ Windows \ System32 \ WBEM; C: \ Windows \ System32; C: \ Windows; C: \ Windows \ System32 \ WBEM;
%Patext% Nein .Com; .exe; .bat; .com; .exe; .bat; .cmd; .vbs; .vbe;
%ProgrammData%[27] Ja %ProgrammData% (Nicht unterstützt, nicht durch einen Wert ersetzt) %SystemDrive%\ Programmdata[27]
%Programmdateien%[27] Ja %SystemDrive%\Programmdateien %SystemDrive%\Programmdateien[27]
%Programmdatei (x86)%[27] Ja %SystemDrive%\ Programme (x86) (Nur in 64-Bit-Version) %SystemDrive%\ Programme (x86) (Nur in 64-Bit-Version)[27]
%Programmw6432%[27] Ja %Programmw6432% (Nicht unterstützt, nicht durch einen Wert ersetzt) %SystemDrive%\Programmdateien (Nur in 64-Bit-Version)[27]
%PROMPT% Nein Code für aktuelle Eingabeaufforderungformat, normalerweise $ p $ g Code für aktuelle Eingabeaufforderungformat, normalerweise $ p $ g
%Psmodulepath% %Psmodulepath% (Nicht unterstützt, nicht durch einen Wert ersetzt) %System Root%\ System32 \ WindowsPowerShell \ V1.0 \ Module \
%ÖFFENTLICHKEIT%[27] Ja %ÖFFENTLICHKEIT% (Nicht unterstützt, nicht durch einen Wert ersetzt) %SystemDrive%\ User \ public[27]
%SystemDrive%[27] Nein C: C:[27]
%System Root%[27] Nein Das Windows -Verzeichnis, normalerweise C: \ Windows, früher C: \ WinNT %SystemDrive%\ Windows[27]
%Temp%[27] und %TMP%[27] Ja %SystemDrive%\ Dokumente und Einstellungen \ {Benutzername} \ Lokale Einstellungen \ tempo %System Root%\ Temp (für Systemumgebungsvariablen %TMP% und %Temp%), %BENUTZERPROFIL%\ Appdata \ local \ temp[27] (Für Benutzerumgebungsvariablen %TMP% und %Temp%))
%UserDomain% Nein {UserDomain} {UserDomain}
%NUTZERNAME% Nein {Nutzername} {Nutzername}
%BENUTZERPROFIL%[27] Ja %SystemDrive%\ Dokumente und Einstellungen \ {Benutzername} %SystemDrive%\ User \ {Benutzername}[27]
%Windir%[27] Nein %SystemDrive%\ Windows %SystemDrive%\ Windows[27]

In dieser Liste gibt es keine Umgebungsvariable, die sich auf den Ort des Benutzers bezieht Meine Dokumente Verzeichnis, daher gibt es keine Standardmethode, um das Heimverzeichnis eines Programms so einzustellen, dass es sich um das handelt Meine Dokumente Verzeichnis.

Pseudo-Umweltvariablen

Die Befehlsprozessoren in DOS und Windows unterstützen auch Pseudo-Umweltvariablen. Dies sind Werte, die wie Umgebungsvariablen abgerufen werden, aber nicht wirklich in der Umgebung gespeichert, sondern auf Anfrage berechnet werden.

DOS

Neben echten Umgebungsvariablen, die bis zum Veränderung oder Löschen statisch in der Umgebung gespeichert sind, gibt es eine Reihe von Pseudo-Umweltvariablen für die Batch-Verarbeitung.

Die sogenannte Ersatzparameter oder Austauschbare Parameter (Microsoft / IBM -Terminologie) AKA Ersatzvariablen (Digitale Forschung / Novell / Caldera Terminologie)[21] oder Batch -Dateiparameter (JP -Software -Terminologie)[10] %1..%9 und %0 Kann verwendet werden, um die aufrufenden Parameter eines Batchjobs abzurufen, siehe WECHSEL. In Batchjobs können sie genauso wie Umgebungsvariablen abgerufen werden, werden jedoch nicht tatsächlich in der Umgebung gespeichert.

Einige Befehlszeilenprozessoren (wie DR-DOS Command.com,[21] Multiuser dos Mdos.com/Tmp.exe (Terminalnachrichtenprozess), JP -Software 4dos, 4OS2, 4nt, Übernehme das Kommando und Fenster cmd.exe) Unterstützen Sie eine Art von Pseudo-Umweltvariablen genannt Systeminformationsvariablen (Terminologie von Novell / Caldera)[21] oder Interne Variablen (JP -Software -Terminologie),[10] Dies kann verwendet werden, um verschiedene möglicherweise dynamische, aber nur schreibgeschützte Informationen über das laufende System in Stapeljobs abzurufen. Die zurückgegebenen Werte repräsentieren den Status des Systems in dem Moment, in dem diese Variablen abgefragt werden. Das heißt, das mehrmalige Lesen in einer Zeile kann auch innerhalb desselben Befehls unterschiedliche Werte zurückgeben. Das Abfragen hat keinen direkten Einfluss auf das System. Da sie nicht in der Umwelt gespeichert sind, werden sie nicht von aufgeführt von EINSTELLEN und existieren nicht für externe Programme zum Abrufen. Wenn eine tatsächliche Umgebungsvariable derselben Namen definiert ist, hat sie Vorrang vor der entsprechenden Variablen, bis die Umgebungsvariable erneut gelöscht wird. Sie sind nicht zu sensibel. Während fast alle solchen Variablen mit einem vorangestellt sind unterstreichen (""_") von 4DOs usw. nach Übereinkommen (F.E. %_ZWEITE%),[10] Sie sind nicht unter DR-DOS Command.com (F.E. %OS VERSION%).

Außerdem unterstützen 4DOS, 4OS2, 4NT und Take Command so genannt variable Funktionen,[10] einschließlich benutzerdefinierbarer. Sie arbeiten genau wie Interne Variablen, kann aber optionale Parameter einnehmen (F.E. %@Eval []%) und kann den Systemstatus je nach Funktion sogar ändern.

Systeminformationsvariablen Unterstützt von DR-DOS Command.com:

%AM_PM%
Diese Pseudo-Variable gibt den ante- oder post-Midday-Status der aktuellen Zeit zurück. Die zurückgegebene Zeichenfolge hängt von der lokalspezifischen Version von DR-DOS, F.E. "bin" oder "PM"In der englischen Version. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%TAG%
Diese Pseudo-Variable gibt die Tage des aktuellen Datums in einem 2-stelligen Format mit führenden Nullen, F.E. "01".."31"Siehe auch die ähnlichen Pseudo-Variable %_TAG%. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%WOCHENTAG%
Diese Pseudo-Variable gibt den Tagesnamen der Woche in einem 3-Charakter-Format zurück. Die zurückgegebene Zeichenfolge hängt von der lokalspezifischen Version von DR-DOS, F.E. "Sonne","Mon","Di","Heiraten","Thu","Fr", oder "Sa"In der englischen Version. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%IRRLEVEL%
Im Command.com Von DR-DOS 7.02 und höher gibt diese pseudo-variable die letzte Fehlerebene zurück, die von einem externen Programm zurückgegeben wird oder der RÜCKKEHR Befehl, F.E. "0".."255".[28][29] Siehe auch die identisch benannte Pseudo-Variable %IRRLEVEL% unter Windows und der Wenn Fehler Bedingter Befehl.
%Fehlerlvl%
In DR-DOS 7.02 und höher gibt dieses pseudo-variable den letzten Fehler in einem 3 -stelligen Format mit führenden Nullen, F.E. "000".."255".[28][29] Unter Multiuser dosDies ist eine echte Umgebungsvariable, die automatisch von der Shell auf den Rückgabecode von Programmen aktualisiert wird.[23] Siehe auch die verwandte Pseudo-Variable %IRRLEVEL% unter dr-dos und der Wenn Fehler Befehl.
%Gruß_Time%
Diese Pseudo-Variable gibt die 3-Stufe-Begrüßungszeit zurück. Die zurückgegebene Zeichenfolge hängt von der lokalspezifischen Version von DR-DOS, F.E. "Morgen","Nachmittag", oder "Abend"In der englischen Version. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%STUNDE%
Diese Pseudo-Variable gibt die Stunden der aktuellen Zeit im 12-Stunden-Format zurück, ohne Nullen zu führen, F.E. "1".."12". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%Stunde24%
Diese Pseudo-Variable gibt die Stunden der aktuellen Zeit im 24-Stunden-Format in einem 2-stelligen Format mit führenden Nullen, F.E. "00".."23". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. Siehe auch das ähnliche Pseudo-Variable %_STUNDE%.
%MINUTE%
Diese Pseudo-Variable gibt die Minuten der aktuellen Zeit in einem 2-stelligen Format mit führenden Nullen, F.E, zurück.00".."59". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. Siehe auch das ähnliche Pseudo-Variable %_MINUTE%.
%MONAT%
Diese Pseudo-Variable gibt die Monate des aktuellen Datums in einem 2-stelligen Format mit führenden Nullen, F.E. "01".."12". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. Siehe auch das ähnliche Pseudo-Variable %_MONAT%.
%Monat_name%
Diese Pseudo-Variable gibt den Monatsnamen des aktuellen Datums zurück. Die zurückgegebene Zeichenfolge hängt von der lokalspezifischen Version von DR-DOS, F.E. "Januar","Februar","Marsch","April","Kann","Juni","Juli","August","September","Oktober", oder "Dezember"In der englischen Version. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%Nday_of_week%
Diese Pseudo-Variable gibt die Anzahl der Tag der aktuellen Woche, F.E. "1".."7" (mit "1"für Sonntag). Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%OS VERSION%
Diese Pseudo-Variable gibt die Version des Betriebssystems je nach aktueller Einstellung der Umgebungsvariablen zurück %Ver%. Wenn %Ver% ist nicht definiert, %OS VERSION% kehrt zurück "aus". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login-Skripte, die Versionen auch für Nicht-DR-DOS-Versionen von DOS zurückgeben können.
%ZWEITE%
Diese Pseudo-Variable gibt die Sekunden der aktuellen Zeit in einem 2-stelligen Format mit führenden Nullen, F.E. "00".."59". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. Siehe auch das ähnliche Pseudo-Variable %_ZWEITE%.
%Short_year%
Dieses Pseudo-Variable gibt das Jahr des aktuellen Datums in einem 2-stelligen Format mit führenden Nullen, F.E. "93".."99","00".."92". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%JAHR% und %_JAHR%
Seitdem unterstützt Novell DOS 7, das %JAHR% Pseudo-Variable gibt das Jahr des aktuellen Datums in einem 4-stelligen Format, F.E. "1980".."2099". Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. DR-DOS 7.02 und höher hinzugefügt %_JAHR% Für Kompatibilität mit 4dosden gleichen Wert zurückgeben.[10]
%/%
Im Command.com Von DR-DOS 7.02 und höher gibt dieser pseudo-variable den Strom zurück Switchar Einstellung des Systems entweder "/"(Dos stil) oder"-"(Unix -Stil).[30][31] Siehe auch die verwandten Config.sys Richtlinie Switchar und die Umgebungsvariable %Switchar%.
%_CODEPAGE%
Dieses Pseudo-Variable gibt den Strom der Systeme zurück Codepage (""1".."65533"), F.E."437","850","858"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch die CHCP Befehl.
%_SÄULEN%
Diese pseudo-variable gibt die aktuelle Anzahl der Bildschirmspalten je nach Anzeigerodus, F.E. "40","80","132"usw. Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch eine ähnliche Umgebungsvariable %$ Width% unter dos plus.
%_LAND%
Dieses Pseudo-Variable gibt den Strom der Systeme zurück Landesvorwahl (""1".."65534"), F.E."1"Für die USA", "44"Für Großbritannien", "49" für Deutschland, "20049" mit ISO 8601, "21049"Mit ISO 8601 und Euro Unterstützung. Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch die Config.sys Richtlinie LAND.
%_TAG%
Diese Pseudo-Variable gibt die Tage des aktuellen Datums zurück, ohne Nullen zu führen, F.E. "1".."31"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch das ähnliche Pseudo-Variable %TAG%.
%_STUNDE%
Diese Pseudo-Variable gibt die Stunden der aktuellen Zeit im 24-Stunden-Format zurück, ohne Nullen zu führen, F.E. "0".."23"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch das ähnliche Pseudo-Variable %Stunde24%.
%_MINUTE%
Diese Pseudo-Variable gibt die Protokolle der aktuellen Zeit zurück, ohne Nullen zu führen, F.E ".0".."59"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch das ähnliche Pseudo-Variable %MINUTE%.
%_MONAT%
Diese Pseudo-Variable gibt die Monate des aktuellen Datums ohne führende Nullen, F.E. "1".."12"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch das ähnliche Pseudo-Variable %MONAT%.
%_REIHEN%
Diese Pseudo-Variable gibt die aktuelle Anzahl der Bildschirmzeilen ab, abhängig vom Anzeigemodus, F.E. "25","43","50"usw. Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe eine ähnliche Umgebungsvariable %$ Länge% unter dos plus.
%_ZWEITE%
Diese Pseudo-Variable gibt die Sekunden der aktuellen Zeit ohne führende Nullen, F.E. "0".."59"Diese Variable wurde ursprünglich von eingeführt von 4dos,[10] wurde aber auch mit erhältlich Command.com Seit DR-DOS 7.02. Siehe auch das ähnliche Pseudo-Variable %ZWEITE%.

Systeminformationsvariablen Unterstützt von DR-DOS Command.com mit Networking geladen:

%BENUTZERNAME%
Diese Pseudo-Variable gibt den Benutzernamen zurück. Das hat immer mit funktioniert NetX, aber es wird auch mit funktionieren Persönliches NetWares's Odi/VLM Wenn das aktuelle Laufwerk ein PNW-Made-Laufwerk ist (ansonsten wird eine leere Zeichenfolge zurückgegeben). Siehe auch die ähnlich benannte Umgebungsvariable %BENUTZERNAME%.
%P_station%
Diese Pseudo-Variable gibt die physische Stationsnummer in einem Format zurück. "????????????". Der Wert hängt von der ab MAC-Adresse des Netzwerkadapters, kann aber überschrieben werden. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%BAHNHOF%
Diese Pseudo-Variable gibt die logische Stationsnummer zurück, beginnend mit "1"Für den ersten Client. Die Zahlen werden vom Dateiserver zugewiesen und bleiben so lange statisch wie die IPX Die Verbindung bleibt hergestellt. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte.
%VOLLSTÄNDIGER NAME%
Diese Pseudo-Variable gibt den vollständigen Namen des protokollierten Benutzers zurück, falls verfügbar. Es ähnelt einem identisch benannten Kennungsvariable in Novell Netware Login -Skripte. Siehe auch die verwandte Pseudo-Variable %BENUTZERNAME%.

Fenster

Dynamische Umgebungsvariablen (auch genannt Interne Variablen oder Systeminformationsvariablen unter DOS) sind Pseudo-Umweltvariablen, die von unterstützt werden von Cmd.exe Wenn Befehlszeilenerweiterungen aktiviert sind und sie bei Ausfragen auf verschiedene diskrete Werte erweitern, können sich ihre Werte auch innerhalb desselben Befehls ändern, wenn sie mehrmals abgefragt werden. Während sie in Batch -Jobs und in der Eingabeaufforderung verwendet werden können, werden sie nicht in der Umwelt gespeichert. Folglich werden sie weder von der Auflistung durch EINSTELLEN Sie existieren auch nicht für externe Programme zum Lesen. Sie sind nicht zu sensibel.

Indirekt werden sie auch unter Windows unterstützt. Command.com, was für intern geändert wurde Cmd.exe Um die Befehle auszuführen.

%CD%
Dieses pseudo-variable erweitert sich auf das aktuelle Verzeichnis, das der Ausgabe des Befehls entspricht CD wenn ohne Argumente aufgerufen. Während ein langer Dateiname unter zurückgesandt werden kann Cmd.exe Abhängig vom aktuellen Verzeichnis wird die Tatsache, dass das aktuelle Verzeichnis immer in der Fall ist 8.3 Format unter Command.com wird dazu führen, dass es einen kurzen Dateinamen unter zurückgibt Command.com, sogar wenn BEFEHL intern Anrufe CMD.
%Cmdcmdline%
Diese pseudo-variable erweitert sich auf die ursprünglichen Startparameter von Cmd.exeF.E. "C: \ Windows \ System32 \ cmd.exe". Unter Windows ' Command.comDies kann so etwas zurückgeben "C: \ Windows \ System32 \ cmd.exe /c ..." aufgrund der Tatsache, dass Command.com Anrufe Cmd.exe im Inneren.
%CmDextversion%
Diese pseudo-variable erweitert sich auf die Version der Befehlszeilenerweiterungen von Cmd.exe, wenn aktiviert (z. B. "1" unter Windows NT, "2" unter Windows 2000 und Windows XP).
%DATUM%
Diese Pseudo-Variable erweitert sich auf das aktuelle Datum. Das Datum wird gemäß dem aktuellen Benutzer angezeigt Datumsformat Vorlieben.
%IRRLEVEL%
Diese pseudo-variable erweitert sich auf die letzte festgelegte Fehlerebene, ein Wert zwischen "0" und "255"(ohne führende Nullen).[28][32][29] Externe Befehle und einige interne Befehle setzen bei der Ausführung Fehlerstufen fest. Siehe auch die identisch benannte Pseudo-Variable %IRRLEVEL% unter dr-dos und der Wenn Fehler Befehl.
%Higestnumanodenumn%
Diese Pseudo-Variable gibt die Anzahl der höchsten zurück Numa Knoten.
%ZUFÄLLIG%
Diese pseudo-variable gibt eine zufällige Zahl zwischen "zurück"0" und "32767".
%ZEIT%
Diese Pseudo-Variable gibt die aktuelle Zeit zurück. Die Zeit wird gemäß den Zeitformateinstellungen des aktuellen Benutzers angezeigt. Wenn die %ZEIT% und %DATUM% Variablen werden verwendet, es ist wichtig, sie beide in dieser bestimmten Reihenfolge in schneller Folge zu lesen, um Probleme mit Mitternachts-Rollover zu vermeiden.

Andere Muscheln

Unix-ähnliche Shells haben ähnliche dynamisch erzeugte Variablen, Bash's $ Zufällig ein bekanntes Beispiel sein. Da diese Shells jedoch ein Konzept lokaler Variablen haben, werden sie stattdessen als spezielle lokale Variablen beschrieben.[33]

Siehe auch

Anmerkungen

  1. ^ a b Anwendungen, die nicht ordnungsgemäß mit Umgebungsvariablen länger als 128 Zeichen enthalten Cadstar PCB, Checkit, Computer wählen CD-ROM, Renderman, Vines Network, Windows 3.0, und Wort für Windows 6.0.
  2. ^ 4dos und MS-DOS 7.0 Stellen Sie die Länge auf 127 ein und setzen Sie ein ASCII-13 an dieser Position, aber Borland Bibliotheken setzen die Länge auf den ungültigen Wert von 128 und fügen keinen ASCII-13 ein. Für kürzere Befehlszeilen 4DOs/Ndos und DR-DOS Setzen Sie auch an ein Ascii-0 Nach dem ASCII-13, aber nicht, wenn es aufgerufen wird INSTALLIEREN Richtlinie; Ms-dos nicht.

Verweise

  1. ^ Robbins, Arnold; Beebe, Nelson H. F. (Mai 2005). Apandi, Tatiana; Randal, Allison; Witwer, Adam (Hrsg.). Klassisches Shell -Skript (1 ed.). O'Reilly. ISBN 978-0-596-00595-5.
  2. ^ "Unbegrenzte Werte und Attribute von Variablen und Funktionen -". Befehle und Dienstprogramme Referenz, Die einzelne Unix -Spezifikation - Die offenen Gruppenbasisspezifikationen, IEEE STD 1003.1-2008 (Ausgabe 7 ed.). Das IEEE und Die offene Gruppe. 2016 [2001]. Archiviert vom Original am 2017-12-18. Abgerufen 2017-12-18.
  3. ^ Fgrose (2015-07-31) [2011]. "Der uneingestellte gebaute Befehl". Bash -Hacker Wiki. Archiviert vom Original am 2017-12-18. Abgerufen 2017-12-18.
  4. ^ Jacobs, Mike; Koren, Alexander; Satran, Michael (2017-11-14). "Einstellungen und andere App -Daten abrufen und abrufen". Microsoft. Archiviert vom Original am 2017-12-18. Abgerufen 2017-12-18.
  5. ^ Raymond, Eric (2002-08-02) [ursprünglich veröffentlicht 2001]. "Das Browserprojekt". Archiviert vom Original am 2019-09-21. Abgerufen 2020-10-21.
  6. ^ "LWN - Entwicklung". Lwn.net. 2001-02-01. Archiviert vom Original am 2019-02-08. Abgerufen 2020-10-21. Standardisierung einer Browserumgebungsvariable. Eric Raymond fördert die Verwendung einer neuen Umgebungsvariablen, Browser, um die vorhandenen Variablen Pager, Mailer und Editor zu ergänzen. Diese Bemühungen werden als Experiment zum Hacken sozialer Systeme getestet.
  7. ^ Špaček, Michal (2020-01-19) [Erste Version 2013 veröffentlicht]. "Env :: Browser-0.06". metacpan.org. Archiviert vom Original am 2020-10-21. Abgerufen 2020-10-21. Env :: Browser - Prozessumgebung Variable $ Browser und Ausführen von Webbrowser
  8. ^ "Webbrowser-bequemer Webbrowser-Controller". docs.python.org. Archiviert vom Original am 2020-10-13. Abgerufen 2020-10-21.
  9. ^ "DefaultWebbrowser - Debian Wiki". wiki.debian.org. 2020-06-10. Archiviert vom Original am 2020-10-21. Abgerufen 2020-10-21. Der Browser der Umgebungsvariablen kann auf […] festgelegt werden immer Ihren gewünschten Browser.
  10. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab Brüder Hardin; Rawson, Tom; Conn, Rex C.; Paul, Matthias R.; Dye, Charles E.; Georgiev, Luchezar I. (2002-02-27). 4DOS 8.00 Online -Hilfe.
  11. ^ a b c d e f g h i j k l m n o p q r Paul, Matthias R. (1997-07-30) [1994-05-01]. NWDOS-TIPS-TIPS & Tricks Rund Um Novell Dos 7, MIT Blick Auf undokumentierte Details, Fehler und Problemumgehungen. Mpdostip. Release 157 (in Deutsch) (3 ed.). Archiviert vom Original am 2016-11-04. Abgerufen 2014-08-06. (Nb. Nwdostip.txt ist eine umfassende Arbeit an Novell DOS 7 und Opendos 7.01, einschließlich der Beschreibung vieler undokumentierter Merkmale und Interna. Der bereitgestellte Link zeigt auf eine HTML-konvertierte Version der Datei, die Teil der ist Mpdostip.zip Sammlung.) [1]
  12. ^ a b c d e Paul, Matthias R. (1997-05-01) [1995-03-01]. "Hinweise Zu Jpsofts 4DOS 5.5B/C, 5,51, 5,52a und ndos". Mpdostip (auf Deutsch). Archiviert vom Original am 2016-11-04. Abgerufen 2015-05-08. (NB. Die bereitgestellten Linkpunkte auf eine HTML-konvertierte Version der 4DOS5TIP.TXT Datei, die Teil der ist Mpdostip.zip Sammlung.) [2]
  13. ^ a b Paul, Matthias R. (1997-10-02). "Caldera Opendos 7.01/7.02 UPDATE ALPHA 3 IBMBIO.com Readme.txt". Archiviert von das Original Am 2003-10-04. Abgerufen 2009-03-29. [3]
  14. ^ Paul, Matthias R. (1997-05-27) [1996]. "Setenv v1.11". Archiviert von das Original am 2009-02-15. Abgerufen 2019-08-09. […] SetEnv […], um die […] vor der Umwelt zu verbergen und später wiederherzustellen […] mit setEnv.com können Sie einige Kilobyten seltener DOS-Speicher sparen […] Abhängig von der Anzahl der Treiber, die von geladen werden, durch Install =/InstallHigh =/Hiinstall = und die aktuelle Größe der Vorumwelt. […] Diese ursprüngliche […] -Funktion kann in keinem bekannten Speichermanager/Optimierer gefunden werden. […]
  15. ^ Paul, Matthias R. (2002-04-06). "Re: [FD-Dev] Kündigte: Cutemouse 2.0 Alpha 1". Freedos-dev. Archiviert vom Original am 2020-02-07. Abgerufen 2020-02-07. […] In ctmouse.asm präparetsr-Routine fand ich einen Kommentar zur Nullumgebung. […] DeSqview oder DR-DOS Null-Env? […] Umgebungsblock veröffentlichen […] überspringen, wenn ein Problem […] Null-Pad für Mem Style Utilities […]
  16. ^ "PTS-DOS 2000 Probenutzerhandbuch" (PDF). Archiviert (PDF) vom Original am 2018-05-12. Abgerufen 2018-05-12.
  17. ^ Paul, Matthias R. (2002-10-07). "Re: Ausführen einer COM -Datei". Newsgroup:ALT.MSDOS.Programmer. Archiviert vom Original am 2017-09-03. Abgerufen 2017-09-03. [4]
  18. ^ a b c d e f Datalight, Inc.; GPVNO (April 2005) [1999]. "Datalight ROM-DOS-Benutzerhandbuch" (PDF). Datalight, Inc. 3010-0200-0716. Archiviert (PDF) vom Original am 2019-03-20. Abgerufen 2018-09-16.
  19. ^ a b c d e f g h i Kotulla, Martin (November 1987). "Von CP/M Zu Ms-Dos, Teil 11" (PDF). Professional Computing (PC) - Schneider International (auf Deutsch). 3 (11): 100–103. Archiviert (PDF) vom Original am 2019-04-24. Abgerufen 2018-05-20.
  20. ^ a b c d e f g h i j k l m n Paul, Matthias R. (2002-03-26). "Aktualisierte CLS gepostet". Freedos-dev Mailingliste. Archiviert vom Original am 2018-10-04. Abgerufen 2014-08-06.
  21. ^ a b c d e f g h Caldera DR-DOS 7.02 Benutzerhandbuch. Caldera, Inc. 1998 [1993, 1997]. Archiviert von das Original Am 2016-11-04. Abgerufen 2013-08-10.
  22. ^ a b c d Paul, Matthias R. (2017-08-14) [2017-08-07]. "Die fortlaufende Saga von Windows 3.1 im erweiterten Modus auf Omnibook 300". MOHPC - Das Museum der HP -Taschenrechner. Archiviert vom Original am 2018-05-01. Abgerufen 2018-05-01. […] Setzen drsys = on (optional, um Systeme zu sagen, dass Sie sich der Tatsache bewusst sind, dass Sie es in einer fremden Umgebung ausführen und ohnehin vorgehen möchten, ohne einige Warnungen und zusätzliche Infosbildschirme einzeln in diesem Szenario angezeigt zu werden) […]
  23. ^ a b c d e f g h i CCI Multiuser DOS 7.22 Gold Online -Dokumentation. Concurrent Controls, Inc. (CCI). 1997-02-10. Hilfe.HLP.
  24. ^ CCI Multiuser DOS 7.22 Goldinstallationshandbuch. Concurrent Controls, Inc. (CCI). 1997-02-10. Printdoc.hlp.
  25. ^ a b c Paul, Matthias R. (2002-02-20). "Wie kann man Freecom/Freedos in-Batch erkennst?". Freedos-dev Mailingliste. Archiviert vom Original am 2018-11-06. Abgerufen 2014-08-06.
  26. ^ Brink, Shawn (2018-11-17). "Umgebungsvariablen in Windows 10 - Komplette Liste der Umgebungsvariablen in Windows 10". Windows Ten -Foren. Archiviert vom Original am 2019-03-27. Abgerufen 2019-04-24.
  27. ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab AC Anzeige ae af Ag Ah ai AJ AK Schulz, Hajo (2014-10-02). "Ordner für Spezielle Felle- Die" Benannten Ordner "in Windows Aus-Benutzer-UNDWICKLERSHTE" [Spezielle Zwecke - Windows 'benannte Ordner "aus der Perspektive eines Benutzers und Entwicklers]. C't - Magazin für Computertechnik (auf Deutsch). Heise Verlag. 2014 (22): 180–184. Archiviert vom Original am 2016-07-09. Abgerufen 2019-04-08.
  28. ^ a b c Paul, Matthias R. (1997-05-01) [1993-10-01]. Battips - Tipps & Tricks zur Programmierung von Batchjobs. Mpdostip (auf Deutsch). 7: Fehlerlevel Abfragen. Archiviert vom Original am 2017-08-23. Abgerufen 2017-08-23. [5] [6] (Nb. Battips.txt ist Teil von mpdostip.zip. Die bereitgestellten Linkpunkte für eine von HTML konvertierte ältere Version der Battips.txt-Datei.) [7]
  29. ^ a b c Auer, Eric; Paul, Matthias R.; Hall, Jim (2015-12-24) [2003-12-31]. "Ms-dos errorlevels". Archiviert von das Original Am 2015-12-24.
  30. ^ Paul, Matthias R. (1998-01-09). DELTREE.BAT R1.01 Erweiterte Datei und Verzeichnis löschen. Caldera, Inc. Archiviert von das Original Am 2019-04-08. Abgerufen 2019-04-08.
  31. ^ DR-DOS 7.03 WhatsNew.txt-Änderungen von DR-DOS 7.02 zu DR-DOS 7.03. Caldera, Inc. 1998-12-24. Archiviert von das Original Am 2019-04-08. Abgerufen 2019-04-08.
  32. ^ Allen, William; Allen, Linda. "Windows 95/98/me Fehlerlevels". Archiviert von das Original Am 2011-07-07.
  33. ^ "Shellvariablen". Bash -Referenzhandbuch.

Weitere Lektüre

Externe Links