Gibt es ein Befehlszeilentool, mit dem Umgebungsvariablen in Windows bearbeitet werden können?
Es wäre schön, wenn dies ein intelligentes Tool wäre, zum Beispiel:
- Wenn Sie einen Pfad hinzufügen, beispielsweise die Variable PATH, und dieser Pfad ist bereits vorhanden, sollte dieser Eintrag nicht verdoppelt werden.
- Das Einfügen eines neuen Pfads in die PATH-Variable sollte vor / nach einem anderen Pfad oder in einer bestimmten Reihenfolge (dem ersten, dem siebten, dem letzten usw.) möglich sein.
- Es sollte möglich sein, nur einen Teil des Variablenwerts zu ändern (im Falle von PATH einen bestimmten Pfad aus einer Liste aller Pfade).
Und das letzte, aber nicht das letzte - ich möchte, dass meine Änderungen zwischen den Sitzungen beibehalten werden, sodass ein einfaches SET nicht in Frage kommt ...
Es gibt ein sehr nettes GUI-Tool für diesen Pfadeditor und ich brauche so etwas nur für die Befehlszeile.
windows
command-line
environment-variables
Piotr Dobrogost
quelle
quelle
Antworten:
Ich kenne kein Tool, das dies tut, aber vielleicht können Sie den
reg
Befehl verwenden:um den aktuellen Pfad zu lesen, und
um deinen neuen Wert zu schreiben.
Sie benötigen Administratorrechte, um in HKLM auf die Rechte zugreifen zu können. Wenn das ein Problem ist, sollten Sie die Pfadeinstellung in benutzerspezifischen Modifikation
HKCU\Environment
statt.quelle
Wenn Sie eine allgemeine Methode zum Festlegen einer Umgebungsvariablen benötigen und die Änderungen beibehalten möchten , ist setx.exe das zu verwendende Tool. Es kann jedoch nicht die "intelligenten" Dinge tun, nach denen Sie fragen ...
setx.exe ist in Windows Vista oder höher enthalten. Wenn Sie eine frühere Version von Windows verwenden, können Sie diese über den obigen Download-Link herunterladen.
quelle
Für das aktuelle Programm gibt es
path
:Dies ist jedoch so ziemlich das gleiche wie
set PATH
.Damit Umgebungsvariablen bestehen bleiben, müssen Sie die Registrierung bearbeiten oder verwenden
setx
.quelle
Ich habe gerade die Möglichkeit entdeckt, den Benutzern das Ausführen des Bearbeitungsdialogs für Umgebungsvariablen ohne erhöhte Berechtigungen zu ermöglichen.
Führen Sie im Startmenü Folgendes aus:
quelle
setze PATH
(Hilfeset)
quelle
Möglicherweise möchten Sie die gtools-Auflistung unter http://www.p-nand-q.com/gtools.html überprüfen
Es bietet eine Reihe von Befehlen für die Eingabeaufforderung wie
um beispielsweise den aktuellen Pfad anzufügen. Ich habe es nicht wirklich überprüft, um ehrlich zu sein, da ich mit der Verwendung einer GUI völlig in Ordnung bin.
Andere Optionen sind:
Ich nehme an, Sie haben sich zusammen mit welchem aus derselben Sammlung ein paar gute Werkzeuge besorgt. Welche "findet ausführbare Dateien auf dem Pfad".
Quelle: http://op111.net/82/
quelle
Ich habe dafür eine Reihe von Batch-Skripten geschrieben. addpath.bat fügt dem Pfad Elemente hinzu, rmpath.bat entfernt Elemente aus dem Pfad und lpath.bat listet nur den Pfad auf. Aber dann brauchte ich ein paar Support-Skripte, also gibt es auch chkpath.bat.
Es war nicht trivial und erforderte tr.exe und cat.exe, ein paar Dienstprogramme im Unix-Stil. Der Grund ist nicht trivial: Keine Backticks in cmd.exe (obwohl Sie dafür for-Schleifen verwenden können) und kurze Namen versus lange Namen.
addpath.bat:
ChkPath.bat:
lpath.bat:
quelle
for
Schleife könnte anstelle vontr
/cat
auch verwendet werden.Der Pfad-Manager (pathman.exe) aus den Resource Kit-Tools von Windows Server 2003 ist die beste Übereinstimmung, die ich finden konnte. Es war bereits im NT Resource Kit verfügbar.
quelle
setx.exe
setx
steht für allgemeine Umgebungsvariablen.pathman
dient speziell zum Manipulieren (dh Parsen ) des Pfades.Wie überprüfe ich, ob das Verzeichnis in% PATH% existiert? on Stack Overflow bietet eine hervorragende Beschreibung dessen, was die Bearbeitung von Windows-Pfaden zusammen mit einer Batchdatei schwierig macht, um sie zu überwinden. Es
addpath.bat
war für mich neu, herauszufinden, wie man es richtig einsetzt, und es hat ein wenig Übung gekostet, da es sich um eine Aufrufstruktur handelt. Aber das funktioniert:und wiederholte Brände fügen das neue Verzeichnis nicht hinzu, wenn es bereits vorhanden ist. Dies hat keine Auswirkung darauf, dass die Änderungen über Sitzungen hinweg bestehen bleiben.
quelle