Ich habe wieder Powershell, aber ich musste $Home\Documents\Profile.ps1
mit dem Inhalt erstellen
$env:PSModulePath = [string]::join(';', ($env:PSModulePath -Split ';' | % {$_.TrimEnd('\')} | Sort-Object -Unique))
Hier ist mein Problem:
PS C:\windows\system32> $env:PSModulePath.Replace(';',"`n") C:\Users\sirdank\Documents\WindowsPowerShell\Modules C:\Program Files\WindowsPowerShell\Modules C:\windows\system32\WindowsPowerShell\v1.0\Modules C:\Program Files (x86)\Microsoft SQLServer\120\Tools\PowerShell\Modules\ C:\Program Files(x86)\Microsoft SDKs\Azure\PowerShell\ResourceManager\AzureResourceManager\ C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ServiceManagement\ C:\Users\sirdank\Documents\WindowsPowerShell\Modules C:\Program Files\WindowsPowerShell\Modules C:\windows\system32\WindowsPowerShell\v1.0\Modules C:\Program Files (x86)\Microsoft SQLServer\120\Tools\PowerShell\Modules\ C:\Program Files(x86)\Microsoft SDKs\Azure\PowerShell\ResourceManager\AzureResourceManager\ C:\Program Files (x86)\Microsoft SDKs\Azure\PowerShell\ServiceManagement\ C:\ProgramFiles (x86)\Microsoft SDKs\Azure\PowerShell\Storage\
Dies geschah nach dem Ausführen, Get-Module xWebAdministration
weil ich die Konfiguration des gewünschten Azure-Status verwenden möchte. Seitdem habe ich es versucht
Keines dieser Dinge hat mein Problem behoben. Wenn ich in der Systemsteuerung nachschaue, scheint PSModulePath richtig eingestellt zu sein. Wenn ich jedoch Powershell öffne, wird oben immer noch die Ausgabe angezeigt, und DSC funktioniert immer noch nicht, da es zweimal versucht, xWebAdministration zu erhalten. Wie repariere ich mein PSModulePath
?
Ich habe wieder Powershell, aber ich musste $Home\Documents\Profile.ps1
mit dem Inhalt erstellen
$env:PSModulePath = [string]::join(';', ($env:PSModulePath -Split ';' | % {$_.TrimEnd('\')} | Sort-Object -Unique))
Wenn PSModulePath
sowohl eine Benutzervariable als auch eine Systemvariable festgelegt ist, werden die beiden wie auch kombiniert PATH
. Seltsamerweise wird nur die Benutzervariable in der Eingabeaufforderung angezeigt, wenn dies echo %PSModulePath%
jedoch $env:PSModulePath
der Fall ist. In PowerShell wird jedoch der tatsächliche kombinierte Wert angezeigt, genau wie der ursprüngliche Stapelbefehl, wenn Sie cmd
von PowerShell aus starten . Es scheint, dass die Modulordner, die von Ihren Dokumenten und von Programmdateien stammen, zur Laufzeit von PowerShell hinzugefügt werden. Sie müssen daher nicht von Umgebungsvariablen bereitgestellt werden.
Um die Modulpfade zu deduplizieren, entfernen Sie die zusätzliche Umgebungsvariable oder bearbeiten Sie sie, um keine Ordner zu wiederholen.