Поделиться через


Install-Script

Устанавливает скрипт.

Синтаксис

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>]

Описание

Командлет Install-Script получает полезные данные скрипта из репозитория, проверяет, является ли полезные данные допустимым скриптом PowerShell и копирует файл скрипта в указанное расположение установки.

Это командлет прокси-сервера для командлета Install-PSResource в Microsoft.PowerShell.PSResourceGet. Дополнительные сведения см. в разделе Install-PSResource.

Примеры

Пример 1. Поиск скрипта и его установка

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

Первая команда находит скрипт с именем Required-Script2 из репозитория Local1 и отображает результаты.

Вторая команда находит Required-Script2 скрипт, а затем использует оператор конвейера для передачи его командлету Install-Script для его установки.

Третья команда использует Get-Command командлет для получения Required-Script2, а затем отображает результаты.

Четвертая команда использует Get-InstalledScript командлет для получения Required-Script2 и отображения результатов.

Пятая команда получает Required-Script2 и использует оператор конвейера для передачи его Format-List командлету для форматирования выходных данных.

Пример 2. Установка скрипта с областью 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

Первая команда устанавливает скрипт с именем Required-Script3 и назначает ее область AllUsers.

Вторая команда получает установленный скрипт Required-Script3 и отображает сведения об этом.

Третья команда получает Required-Script3 и использует оператор конвейера для передачи его Format-List командлету для форматирования выходных данных.

Пример 3. Установка скрипта и его зависимостей

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

Первая команда находит скрипт с именем Script-WithDependencies2 и его зависимости в репозитории Local1 и отображает результаты.

Вторая команда устанавливает Script-WithDependencies2.

Третья команда использует командлет скрипта Get-InstalledScript для получения установленных скриптов и отображения результатов.

Четвертая команда использует Get-InstalledModule командлет для получения установленных модулей и отображения результатов.

Пятая команда использует Find-Script командлет для поиска скриптов, где Required-Script начинается имя и отображает результаты.

Шестая команда устанавливает скрипты, с Required-Script которых начинается имя в репозитории Local1.

Последняя команда получает установленные скрипты и отображает результаты.

Параметры

-AcceptLicense

Автоматически примите лицензионное соглашение во время установки, если модуль требует его.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-AllowPrerelease

Позволяет установить скрипт, помеченный как предварительная версия.

Командлет прокси-сервера сопоставляет этот параметр с параметром Install-PSResourcePrerelease .

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Confirm

Запрашивает подтверждение перед запуском cmdlet.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Credential

Указывает учетную запись пользователя, которая имеет права на установку скрипта для указанного поставщика пакетов или источника.

Тип:PSCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Force

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Install-PSResource.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-InputObject

Используется для ввода конвейера. Ошибка возникает, если значение, предоставленное непосредственно в InputObject. Используйте конвейер для передачи объектов с параметром InputObject .

Тип:PSObject[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MaximumVersion

Командлет прокси-сервера использует значение этого параметра для создания строки поиска версий NuGet для использования с параметром Install-PSResourceVersion.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-MinimumVersion

Командлет прокси-сервера использует значение этого параметра для создания строки поиска версий NuGet для использования с параметром Install-PSResourceVersion.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Name

Задает массив имен скриптов для установки.

Тип:String[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-NoPathUpdate

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Install-PSResource.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-PassThru

При использовании параметра Install-ScriptPassThru выводит объект PSRepositoryItemInfo для модуля. Это те же сведения, которые вы получаете от командлета Find-Script .

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Proxy

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Install-PSResource.

Тип:Uri
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-ProxyCredential

Командлет прокси-сервера игнорирует этот параметр, так как он не поддерживается Install-PSResource.

Тип:PSCredential
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Repository

Указывает понятное имя репозитория, зарегистрированного в командлете Register-PSRepository . Значение по умолчанию — все зарегистрированные репозитории.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-RequiredVersion

Командлет прокси-сервера использует значение этого параметра для создания строки поиска версий NuGet для использования с параметром Install-PSResourceVersion.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Scope

Указывает область установки скрипта. Допустимые значения: AllUsers и CurrentUser.

Область AllUsers позволяет устанавливать модули в расположении, доступном всем пользователям компьютера, то есть $env:ProgramFiles\WindowsPowerShell\Scripts.

Область CurrentUser позволяет устанавливать только $HOME\Documents\WindowsPowerShell\Scriptsмодули, чтобы модуль был доступен только текущему пользователю.

Если область не определена, значение по умолчанию будет задано на основе текущего сеанса:

  • Для сеанса PowerShell с повышенными привилегиями область по умолчанию используется allUsers;
  • Для сеансов PowerShell с повышенными привилегиями в PowerShellGet версии 2.0.0 и выше область — CurrentUser;
  • Для сеансов PowerShell с повышенными привилегиями в PowerShellGet версии 1.6.7 и более ранних версиях область не определена и Install-Module завершается ошибкой.
Тип:String
Допустимые значения:CurrentUser, AllUsers
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет, если командлет будет запущен. Командлет не запускается.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

String[]

Uri

Выходные данные

Примечания

Это важно

По состоянию на апрель 2020 г. коллекция PowerShell больше не поддерживает протокол TLS версии 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке получить доступ к коллекции PowerShell появится сообщение об ошибке. Используйте следующую команду, чтобы убедиться, что используется TLS 1.2:

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

Дополнительные сведения см. в объявления в блоге PowerShell.