Bevor die Frage angezeigt wird, verwende ich die Befehlsreihenfolge, path = %path%D:\test
um eine Wurzel in PATH (Umgebungsvariable) hinzuzufügen. Wenn ich die Befehlsreihenfolge verwende echo %path%
, wird Folgendes angezeigt:
D:\VMware Workstation Pro\bin\;C:\Program Files\Microsoft\jdk-11.0.12.7-hotspot\bin;C:\Program Files (x86)\Common Files\Intel\Shared Libraries\redist\intel64\compiler;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\dotnet\;C:\Program Files (x86)\dotnet\;D:\ffmpeg\bin;D:\mingw64\bin;D:\py3.7\Scripts\;D:\py3.7\;C:\Users\admin\AppData\Local\Microsoft\WindowsApps;D:\Microsoft VS Code\bin;D:\ffmpeg\bin;D:\test
Aber wenn ich in die Computereigenschaften gehe, wird Folgendes angezeigt:
Die Computereigenschaften zeigen:
Offensichtlich,D:\Test
geht im PATH in der Computereigenschaft des Umgebungswerts PATH verloren.
Ich möchte wissen, warum das Problem besteht und wie ich es beheben kann.
Danke schön.
Antwort1
Warum ist der Pfad in einer cmd
Shell und der Systemeigenschaft unterschiedlich?
Wenn Sie set
eine Umgebungsvariable ändern, sind die Änderungen nur für die aktuelle Befehlsshell gültig.
set
- CMD-Umgebungsvariablen anzeigen, festlegen oder entfernen. Mit SET vorgenommene Änderungen bleiben nur für die Dauer der aktuellen CMD-Sitzung bestehen.
Um eine dauerhafte Änderung vorzunehmen, verwenden Sie setx
stattdessen.
setx
- Umgebungsvariablen dauerhaft festlegen. SETX kann zum Festlegen von Umgebungsvariablen für die Maschine (HKLM) oder den aktuell angemeldeten Benutzer (HKCU) verwendet werden.