Wenn eine Instanz von PowerShell ISE ausgeführt wird und ich etwas installiere, das den PATH ändert, oder wenn ich es außerhalb von PowerShell auf irgendeine Weise ändere, muss ich PowerShell neu starten, damit die aktualisierte PATH-Variable angezeigt wird.
Gibt es eine Möglichkeit, den Pfad aus PowerShell heraus neu zu laden, ohne ihn neu zu starten?
powershell
console
powershell-ise
rauben
quelle
quelle
refreshenv
. Dies führt im Grunde eine ausführlichere Version von Robs Kommentar aus.refreshenv
hat nicht funktioniert. Die Antwort hier ('Robs Kommentar') hat den Trick gut gemacht. Es kann also Situationen geben, in denen ein Ansatz funktioniert und der andere nicht ...refreshenv
funktioniert dies nicht. Dasrefreshenv
einzige funktioniert bei nachfolgenden geöffneten Muscheln.Versuchen Sie, den Maschinenpfad abzurufen und dem Pfad der Sitzung zuzuweisen.
quelle
Verwenden Sie am einfachsten Chocolatey (Freeware). Es funktioniert sowohl für CMD als auch für PowerShell. Dann können Sie PATH (mit variabler Erweiterung) mit einem einfachen Befehl neu laden:
Installation von cmd (erfordert Administratorrechte):
Anwendungsbeispiel:
quelle
refreshenv
hat bei mir nicht funktioniert (Windows 10). Ich musste noch ein neues Fenster öffnen, damit es wirksam wurde.Basierend auf der Antwort von mpen ist hier eine PowerShell-Funktion:
Dann ruf einfach an
refresh-path
.quelle
Wenn Ihr Pfad Umgebungsvariablen enthält, die zu Beginn der Sitzung nicht definiert wurden, sollten Sie auch diese erweitern:
Für mich war dies nach der Installation von NVM nützlich, das% NVM_HOME% definiert und dem Pfad hinzufügt.
Um dies zu seiner logischen Schlussfolgerung zu bringen, können Sie stattdessen diese rekursive Funktion verwenden, um Folgendes zu erweitern:
Und dann benutze:
Ich habe ein Problem geöffnet , um diese Lösung
refreshenv
von Chocolatey hinzuzufügen .quelle
Um andere Antworten zu ergänzen, können Sie sicherstellen, dass Sie keine überflüssigen Verknüpfungen hinzufügen, indem Sie filtern, falls der Benutzer einen leeren Pfad hat.
Wenn Sie ein Skript ausführen, das einer anderen oder mehreren Umgebungsvariablen hinzugefügt wird, verwenden Sie eine Funktion, um alle zurückzusetzen
quelle