Install-Script

Instala un script.

Syntax

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

El Install-Script cmdlet adquiere una carga de script de un repositorio, comprueba que la carga es un script de PowerShell válido y copia el archivo de script en una ubicación de instalación especificada.

Se trata de un cmdlet de proxy para el Install-PSResource cmdlet en Microsoft.PowerShell.PSResourceGet. Para obtener más información, consulte Install-PSResource.

Ejemplos

Ejemplo 1: Buscar un script e instalarlo

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

El primer comando busca el script denominado Required-Script2 del repositorio Local1 y muestra los resultados.

El segundo comando busca el Required-Script2 script y, a continuación, usa el operador de canalización para pasarlo al Install-Script cmdlet para instalarlo.

El tercer comando usa el Get-Command cmdlet para obtener Required-Script2y, a continuación, muestra los resultados.

El cuarto comando usa el Get-InstalledScript cmdlet para obtener Required-Script2 y mostrar los resultados.

El quinto comando obtiene Required-Script2 y usa el operador de canalización para pasarlo al cmdlet para dar formato a Format-List la salida.

Ejemplo 2: Instalación de un script con el ámbito 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

El primer comando instala el script denominado Required-Script3 y le asigna el ámbito AllUsers.

El segundo comando obtiene el script Required-Script3 instalado y muestra información sobre él.

El tercer comando obtiene Required-Script3 y usa el operador de canalización para pasarlo al cmdlet para dar formato a Format-List la salida.

Ejemplo 3: Instalación de un script y sus dependencias

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

El primer comando busca el script denominado Script-WithDependencies2 y sus dependencias en el repositorio Local1 y muestra los resultados.

El segundo comando instala Script-WithDependencies2.

El tercer comando usa el Get-InstalledScript cmdlet script para obtener scripts instalados y mostrar los resultados.

El cuarto comando usa el Get-InstalledModule cmdlet para obtener módulos instalados y mostrar los resultados.

El quinto comando usa el Find-Script cmdlet para buscar scripts donde Required-Script comienza el nombre y mostrar los resultados.

El sexto comando instala los scripts con los que comienza Required-Script el nombre en el repositorio Local1.

El comando final obtiene scripts instalados y muestra los resultados.

Parámetros

-AcceptLicense

Acepte automáticamente el contrato de licencia durante la instalación si el módulo lo requiere.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AllowPrerelease

Permite instalar un script marcado como versión preliminar.

El cmdlet de proxy asigna este parámetro al parámetro Versión preliminar de Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Especifica una cuenta de usuario que tiene derechos para instalar un script para un proveedor de paquetes o un origen especificados.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Force

El cmdlet de proxy omite este parámetro, ya que no es compatible con Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Se usa para la entrada de canalización. Se produce un error si un valor proporcionado directamente a InputObject. Use la canalización para pasar objetos con el parámetro InputObject .

Type:PSObject[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-MaximumVersion

El cmdlet de proxy usa el valor de este parámetro para crear una cadena de búsqueda de versión de NuGet para usarla con el parámetro Version de Install-PSResource.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-MinimumVersion

El cmdlet de proxy usa el valor de este parámetro para crear una cadena de búsqueda de versión de NuGet para usarla con el parámetro Version de Install-PSResource.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Name

Especifica una matriz de nombres de scripts que se van a instalar.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-NoPathUpdate

El cmdlet de proxy omite este parámetro, ya que no es compatible con Install-PSResource.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Al usar el parámetro PassThru , Install-Script genera un objeto PSRepositoryItemInfo para el módulo. Esta es la misma información que obtiene del Find-Script cmdlet .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

El cmdlet de proxy omite este parámetro, ya que no es compatible con Install-PSResource.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProxyCredential

El cmdlet de proxy omite este parámetro, ya que no es compatible con Install-PSResource.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Repository

Especifica el nombre descriptivo de un repositorio que se ha registrado con el Register-PSRepository cmdlet . El valor predeterminado es todos los repositorios registrados.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequiredVersion

El cmdlet de proxy usa el valor de este parámetro para crear una cadena de búsqueda de versión de NuGet para usarla con el parámetro Version de Install-PSResource.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Scope

Especifica el ámbito de instalación del script. Los valores válidos son AllUsers y CurrentUser.

El ámbito AllUsers permite instalar módulos en una ubicación accesible para todos los usuarios del equipo, es decir, $env:ProgramFiles\WindowsPowerShell\Scripts.

El ámbito CurrentUser permite que los módulos solo se instalen en $HOME\Documents\WindowsPowerShell\Scripts, de modo que el módulo solo esté disponible para el usuario actual.

Cuando no se define ningún ámbito , el valor predeterminado se establecerá en función de la sesión actual:

  • Para una sesión de PowerShell con privilegios elevados, El ámbito tiene como valor predeterminado AllUsers;
  • Para sesiones de PowerShell sin privilegios elevados en PowerShellGet versiones 2.0.0 y posteriores, Scope es CurrentUser;
  • En el caso de las sesiones de PowerShell sin privilegios elevados en PowerShellGet versiones 1.6.7 y anteriores, el ámbito no está definido y Install-Module se produce un error.
Type:String
Accepted values:CurrentUser, AllUsers
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String[]

PSObject[]

String

Uri

PSCredential

Salidas

Object

Notas

Importante

A partir de abril de 2020, Galería de PowerShell ya no es compatible con las versiones 1.0 y 1.1 de Seguridad de la capa de transporte (TLS). Si no usa TLS 1.2 o una versión posterior, recibirá un error al intentar obtener acceso a Galería de PowerShell. Use el siguiente comando para asegurarse de que usa TLS 1.2:

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

Para más información, consulte el anuncio en el blog de PowerShell.