Installera PowerShellGet
PowerShellGet är en in-box-modul i följande versioner
- Windows 10 eller nyare
- Windows Server 2016 eller nyare
- Windows Management Framework (WMF) 5.0 eller nyare
- PowerShell 6
Hämta den senaste versionen från PowerShell-galleriet
Innan du uppdaterar PowerShellGet bör du alltid installera den senaste NuGet-providern. Kör följande kommando från en upphöjd PowerShell-session.
Install-PackageProvider -Name NuGet -Force
Viktigt
Från och med april 2020 PowerShell-galleriet inte längre versionerna Transport Layer Security (TLS) 1.0 och 1.1. Om du inte använder TLS 1.2 eller senare får du ett felmeddelande när du försöker komma åt PowerShell-galleriet. Använd följande kommando för att kontrollera att du använder TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
Mer information finns i tillkännagivandet i PowerShell-bloggen.
För system med PowerShell 5.0 (eller nyare) kan du installera den senaste versionen av PowerShellGet
Om du vill installera PowerShellGet på alla system där WMF 5.1 är installerat kör du följande kommandon från en upphöjd PowerShell-session.
Install-Module -Name PowerShellGet -Force
Använd Update-Module för att hämta nyare versioner.
Update-Module -Name PowerShellGet
Exit
För datorer som kör PowerShell 3.0 eller PowerShell 4.0
De här anvisningarna gäller för datorer som har PackageManagement Preview installerat eller som inte har någon version av PowerShellGet installerad.
Save-ModuleCmdleten används i båda uppsättningarna med instruktioner. Save-Module laddar ned och sparar en modul och eventuella beroenden från en registrerad lagringsplats. Modulens senaste version sparas på en angiven sökväg på den lokala datorn, men installeras inte. Om du vill installera modulerna i PowerShell 3.0 eller 4.0 kopierar du modulens sparade mappar till $env:ProgramFiles\WindowsPowerShell\Modules .
Mer information finns i Save-Module.
Anteckning
PowerShell 3.0 och PowerShell 4.0 hade endast stöd för en version av en modul. Från och med PowerShell 5.0 installeras moduler i <modulename>\<version> . På så sätt kan du installera flera versioner sida vid sida. När du har laddat ned modulen med måste du kopiera filerna från till mappen på Save-Module <modulename>\<version> <modulename> måldatorn, som du ser i anvisningarna nedan.
Förberedande steg på datorer som kör PowerShell 3.0
Anvisningarna i avsnitten nedan installerar modulerna i katalogen $env:ProgramFiles\WindowsPowerShell\Modules . I PowerShell 3.0 visas inte den här katalogen i som standard, så du måste lägga till den för att modulerna ska läsas in $env:PSModulePath automatiskt.
Öppna en upphöjd PowerShell-session och kör följande kommando (som börjar gälla i framtida sessioner):
[Environment]::SetEnvironmentVariable(
'PSModulePath',
((([Environment]::GetEnvironmentVariable('PSModulePath', 'Machine') -split ';') + "$env:ProgramFiles\WindowsPowerShell\Modules") -join ';'),
'Machine'
)
Datorer med PackageManagement Preview installerat
Anteckning
PackageManagement Preview var en nedladdningsbar komponent som gjorde PowerShellGet tillgängligt för PowerShell version 3 och 4, men det är inte längre tillgängligt. Om du vill testa om den har installerats på en viss dator kör du Get-Module -ListAvailable PowerShellGet .
Från en PowerShell-session använder du
Save-Moduleför att ladda ned den aktuella versionen av PowerShellGet. Två mappar laddas ned: PowerShellGet och PackageManagement. Varje mapp innehåller en undermapp med ett versionsnummer.Save-Module -Name PowerShellGet -Path C:\LocalFolder -Repository PSGalleryKontrollera att modulerna PowerShellGet och PackageManagement inte har lästs in i några andra processer.
Öppna PowerShell-konsolen igen med förhöjd behörighet och kör följande kommando.
'PowerShellGet', 'PackageManagement' | % { $targetDir = "$env:ProgramFiles\WindowsPowerShell\Modules\$_" Remove-Item $targetDir\* -Recurse -Force Copy-Item C:\LocalFolder\$_\*\* $targetDir\ -Recurse -Force }
Datorer utan PowerShellGet
För datorer utan någon installerad version av PowerShellGet (testa med ) krävs en dator med Get-Module -ListAvailable PowerShellGet PowerShellGet installerat för att hämta modulerna.
Från den dator där PowerShellGet är installerat använder du för
Save-Moduleatt ladda ned den aktuella versionen av PowerShellGet. Två mappar laddas ned: PowerShellGet och PackageManagement. Varje mapp innehåller en undermapp med ett versionsnummer.Save-Module -Name PowerShellGet -Path C:\LocalFolder -Repository PSGalleryKopiera respektive undermapp i
<version>mapparna PowerShellGet och PackageManagement till den dator som inte har PowerShellGet installerat i mappar och mappar, vilket kräver en$env:ProgramFiles\WindowsPowerShell\Modules\PowerShellGet\$env:ProgramFiles\WindowsPowerShell\Modules\PackageManagement\upphöjd session.Om du till exempel har åtkomst till nedladdningsmappen på den andra datorn, till exempel , från måldatorn via en UNC-sökväg, till exempel , öppnar du en PowerShell-konsol med förhöjd behörighet och kör
ws1\\ws1\C$\LocalFolderföljande kommando:'PowerShellGet', 'PackageManagement' | % { $targetDir = "$env:ProgramFiles\WindowsPowerShell\Modules\$_" $null = New-Item -Type Directory -Force $targetDir $fromComputer = 'ws1' # Specify the name of the other computer here. Copy-Item \\$fromComputer\C$\LocalFolder\$_\*\* $targetDir -Recurse -Force if (-not (Get-ChildItem $targetDir)) { Throw "Copying failed." } }