Delen via


Install-Script

Hiermee wordt een script geïnstalleerd.

Syntaxis

Install-Script
       [-Name] <String[]>
       [-MinimumVersion <String>]
       [-MaximumVersion <String>]
       [-RequiredVersion <String>]
       [-Repository <String[]>]
       [-Scope <String>]
       [-NoPathUpdate]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-Credential <PSCredential>]
       [-Force]
       [-AllowPrerelease]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Install-Script
       [-InputObject] <PSObject[]>
       [-Scope <String>]
       [-NoPathUpdate]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-Credential <PSCredential>]
       [-Force]
       [-AcceptLicense]
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

De Install-Script cmdlet verkrijgt een nettolading van een script uit een opslagplaats, controleert of de nettolading een geldig PowerShell-script is en kopieert het scriptbestand naar een opgegeven installatielocatie.

De standaardopslagplaatsen Install-Script werkt, kunnen worden geconfigureerd via de cmdlets Register-PSRepository, Set-PSRepository, Unregister-PSRepositoryen Get-PSRepository. Wanneer u werkt met meerdere opslagplaatsen, installeert Install-Script het eerste script dat overeenkomt met de opgegeven zoekcriteria (Naam, MinimumVersionof MaximumVersion) van de eerste opslagplaats zonder fouten.

Voorbeelden

Voorbeeld 1: Een script zoeken en installeren

PS C:\> Find-Script -Repository "Local1" -Name "Required-Script2"
Version    Name                           Type       Repository           Description
-------    ----                           ----       ----------           -----------
2.5        Required-Script2               Script     local1               Description for the Required-Script2 script

PS C:\> Find-Script -Repository "Local1" -Name "Required-Script2" | Install-Script
PS C:\> Get-Command -Name "Required-Script2"
CommandType     Name                      Version    Source
-----------     ----                      -------    ------
ExternalScript  Required-Script2.ps1      2.0       C:\Users\pattif\Documents\WindowsPowerShell\Scripts\Required-Script2.ps1

PS C:\> Get-InstalledScript -Name "Required-Script2"
Version    Name                  Type     Repository           Description
-------    ----                  ----     ----------           -----------
2.5        Required-Script2      Script   local1               Description for the Required-Script2 script

PS C:\> Get-InstalledScript -Name "Required-Script2" | Format-List *
Name                       : Required-Script2
Version                    : 2.5
Type                       : Script
Description                : Description for the Required-Script2 script
Author                     : pattif
CompanyName                :
Copyright                  : 2015 Microsoft Corporation. All rights reserved.
PublishedDate              : 8/15/2015 12:42:39 AM
LicenseUri                 : http://required-script2.com/license
ProjectUri                 : http://required-script2.com/
IconUri                    : http://required-script2.com/icon
Tags                       : {Tag1, Tag2, Tag-Required-Script2-2.5, PSScript...}
Includes                   : {Function, DscResource, Cmdlet, Command}
PowerShellGetFormatVersion :
ReleaseNotes               : Required-Script2 release notes
Dependencies               : {}
RepositorySourceLocation   : http://pattif-dev:8765/api/v2/
Repository                 : local1
PackageManagementProvider  : NuGet
InstalledLocation          : C:\Users\pattif\Documents\WindowsPowerShell\Scripts

Met de eerste opdracht wordt het script met de naam Required-Script2 uit de opslagplaats Local1 gevonden en worden de resultaten weergegeven.

De tweede opdracht zoekt het Required-Script2 script en gebruikt vervolgens de pijplijnoperator om deze door te geven aan de Install-Script cmdlet om het te installeren.

De derde opdracht maakt gebruik van de Get-Command cmdlet om Required-Script2op te halen en vervolgens de resultaten weer te geven.

De vierde opdracht maakt gebruik van de Get-InstalledScript cmdlet om Required-Script2 op te halen en de resultaten weer te geven.

Met de vijfde opdracht wordt Required-Script2 en wordt de pijplijnoperator gebruikt om deze door te geven aan de Format-List-cmdlet om de uitvoer op te maken.

Voorbeeld 2: Een script installeren met het bereik AllUsers

PS C:\> Install-Script -Repository "Local1" -Name "Required-Script3" -Scope "AllUsers"
PS C:\> Get-InstalledScript -Name "Required-Script3"
Version    Name                  Type       Repository    Description
-------    ----                  ----       ----------    -----------
2.5        Required-Script3      Script     local1        Description for the Required-Script3 script

PS C:\> Get-InstalledScript -Name "Required-Script3" | Format-List *
Name                       : Required-Script3
Version                    : 2.5
Type                       : Script
Description                : Description for the Required-Script3 script
Author                     : pattif
CompanyName                :
Copyright                  : 2015 Microsoft Corporation. All rights reserved.
PublishedDate              : 8/15/2015 12:42:45 AM
LicenseUri                 : http://required-script3.com/license
ProjectUri                 : http://required-script3.com/
IconUri                    : http://required-script3.com/icon
Tags                       : {Tag1, Tag2, Tag-Required-Script3-2.5, PSScript...}
Includes                   : {Function, DscResource, Cmdlet, Command}
PowerShellGetFormatVersion :
ReleaseNotes               : Required-Script3 release notes
Dependencies               : {}
RepositorySourceLocation   : http://pattif-dev:8765/api/v2/
Repository                 : local1
PackageManagementProvider  : NuGet
InstalledLocation          : C:\Program Files\WindowsPowerShell\Scripts

Met de eerste opdracht wordt het script met de naam Required-Script3 geïnstalleerd en wordt het bereik AllUsers toegewezen.

Met de tweede opdracht wordt het geïnstalleerde script Required-Script3 en wordt informatie over het script weergegeven.

Met de derde opdracht wordt Required-Script3 en wordt de pijplijnoperator gebruikt om deze door te geven aan de Format-List-cmdlet om de uitvoer op te maken.

Voorbeeld 3: Een script en de bijbehorende afhankelijkheden installeren

PS C:\> Find-Script -Repository "Local1" -Name "Script-WithDependencies2" -IncludeDependencies
Version    Name                        Type       Repository    Description
-------    ----                        ----       ----------    -----------
2.0        Script-WithDependencies2    Script     local1        Description for the Script-WithDependencies2 script
2.5        RequiredModule1             Module     local1        RequiredModule1 module
2.5        RequiredModule2             Module     local1        RequiredModule2 module
2.5        RequiredModule3             Module     local1        RequiredModule3 module
2.5        Required-Script1            Script     local1        Description for the Required-Script1 script
2.5        Required-Script2            Script     local1        Description for the Required-Script2 script
2.5        Required-Script3            Script     local1        Description for the Required-Script3 script

PS C:\> Install-Script -Repository "Local1" -Name "Script-WithDependencies2"
PS C:\> Get-InstalledScript
Version    Name                        Type       Repository    Description
-------    ----                        ----       ----------    -----------
2.5        Required-Script1            Script     local1        Description for the Required-Script1 script
2.5        Required-Script2            Script     local1        Description for the Required-Script2 script
2.5        Required-Script3            Script     local1        Description for the Required-Script3 script
2.0        Script-WithDependencies2    Script     local1        Description for the Script-WithDependencies2 script

PS C:\> Get-InstalledModule
Version    Name                        Type       Repository    Description
-------    ----                        ----       ----------    -----------
2.5        RequiredModule1             Module     local1        RequiredModule1 module
2.5        RequiredModule2             Module     local1        RequiredModule2 module
2.5        RequiredModule3             Module     local1        RequiredModule3 module

PS C:\> Find-Script -Repository "Local1" -Name "Required-Script*"
Version    Name                        Type       Repository    Description
-------    ----                        ----       ----------    -----------
2.5        Required-Script1            Script     local1        Description for the Required-Script1 script
2.5        Required-Script2            Script     local1        Description for the Required-Script2 script
2.5        Required-Script3            Script     local1        Description for the Required-Script3 script

PS C:\> Install-Script -Repository "Local1" -Name "Required-Script*"
PS C:\> Get-InstalledScript
Version    Name                        Type       Repository    Description
-------    ----                        ----       ----------    -----------
2.5        Required-Script1            Script     local1        Description for the Required-Script1 script
2.5        Required-Script2            Script     local1        Description for the Required-Script2 script
2.5        Required-Script3            Script     local1        Description for the Required-Script3 script

Met de eerste opdracht wordt het script met de naam Script-WithDependencies2 en de bijbehorende afhankelijkheden in de opslagplaats Local1 gevonden en worden de resultaten weergegeven.

Met de tweede opdracht wordt Script-WithDependencies2geïnstalleerd.

De derde opdracht maakt gebruik van de Get-InstalledScript script-cmdlet om geïnstalleerde scripts op te halen en de resultaten weer te geven.

De vierde opdracht maakt gebruik van de Get-InstalledModule cmdlet om geïnstalleerde modules op te halen en de resultaten weer te geven.

De vijfde opdracht gebruikt de Find-Script cmdlet om scripts te vinden waar de naam begint met Required-Script en de resultaten weer te geven.

Met de zesde opdracht worden de scripts geïnstalleerd waarin de naam begint met Required-Script in de opslagplaats Local1.

Met de laatste opdracht worden geïnstalleerde scripts opgehaald en worden de resultaten weergegeven.

Parameters

-AcceptLicense

Accepteer automatisch de gebruiksrechtovereenkomst tijdens de installatie als de module dit vereist.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-AllowPrerelease

Hiermee kunt u een script installeren dat is gemarkeerd als een voorlopige versie.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Confirm

U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u een gebruikersaccount met rechten voor het installeren van een script voor een opgegeven pakketprovider of bron.

Type:PSCredential
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Force

Hiermee dwingt u de opdracht uit te voeren zonder dat u om bevestiging van de gebruiker wordt gevraagd.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-InputObject

Wordt gebruikt voor pijplijninvoer. Er wordt een fout gegenereerd als een waarde die rechtstreeks aan InputObjectis opgegeven. Gebruik de pijplijn om objecten door te geven met de parameter InputObject.

Type:PSObject[]
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-MaximumVersion

Hiermee geeft u de maximale versie van één scripts te installeren. U kunt deze parameter niet toevoegen als u meerdere scripts probeert te installeren. De MaximumVersion en de parameters RequiredVersion sluiten elkaar uit; u kunt beide parameters niet gebruiken in dezelfde opdracht.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-MinimumVersion

Hiermee geeft u de minimale versie van één script dat moet worden geïnstalleerd. U kunt deze parameter niet toevoegen als u meerdere scripts probeert te installeren. De MinimumVersion en de parameters RequiredVersion sluiten elkaar wederzijds uit; u kunt beide parameters niet gebruiken in dezelfde opdracht.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Name

Hiermee geeft u een matrix van namen van scripts die moeten worden geïnstalleerd.

Type:String[]
Position:0
Default value:None
Vereist:True
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-NoPathUpdate

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-PassThru

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Proxy

Hiermee geeft u een proxyserver voor de aanvraag op, in plaats van rechtstreeks verbinding te maken met de internetresource.

Type:Uri
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-ProxyCredential

Hiermee geeft u een gebruikersaccount op dat is gemachtigd voor het gebruik van de proxyserver die is opgegeven door de Proxy parameter.

Type:PSCredential
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Repository

Hiermee geeft u de beschrijvende naam van een opslagplaats die is geregistreerd bij de Register-PSRepository cmdlet. De standaardwaarde is alle geregistreerde opslagplaatsen.

Type:String[]
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-RequiredVersion

Hiermee geeft u het exacte versienummer van het script dat moet worden geïnstalleerd.

Type:String
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Scope

Hiermee geeft u het installatiebereik van het script. Geldige waarden zijn: AllUsers en CurrentUser.

Met het bereik AllUsers kunnen modules worden geïnstalleerd op een locatie die toegankelijk is voor alle gebruikers van de computer, dat wil gezegd $env:ProgramFiles\WindowsPowerShell\Scripts.

Met het bereik CurrentUser kunnen modules alleen worden geïnstalleerd op $home\Documents\WindowsPowerShell\Scripts, zodat de module alleen beschikbaar is voor de huidige gebruiker.

Wanneer er geen bereik is gedefinieerd, wordt de standaard ingesteld op basis van de huidige sessie:

  • Voor een PowerShell-sessie met verhoogde bevoegdheden Bereik standaard ingesteld op AllUsers;
  • Voor niet-verhoogde PowerShell-sessies in PowerShellGet-versies 2.0.0 en hoger is Bereik CurrentUser;
  • Voor niet-verhoogde PowerShell-sessies in PowerShellGet-versies 1.6.7 en eerder is Bereik niet gedefinieerd en mislukt Install-Module.
Type:String
Geaccepteerde waarden:CurrentUser, AllUsers
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String[]

PSObject[]

String

Uri

PSCredential

Uitvoerwaarden

Object

Notities

Belangrijk

Vanaf april 2020 biedt de PowerShell Gallery geen ondersteuning meer voor TLS-versies (Transport Layer Security) 1.0 en 1.1. Als u TLS 1.2 of hoger niet gebruikt, krijgt u een foutmelding wanneer u toegang probeert te krijgen tot de PowerShell Gallery. Gebruik de volgende opdracht om ervoor te zorgen dat u TLS 1.2 gebruikt:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Zie de aankondiging in de PowerShell-blog voor meer informatie.