Install-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
Cmdlet Install-Script
會從存放庫取得腳本承載、確認承載是有效的 PowerShell 腳本,並將腳本檔案複製到指定的安裝位置。
這是Microsoft.PowerShell.PSResourceGet中 Cmdlet 的 Proxy Cmdlet Install-PSResource
。 如需詳細資訊,請參閱 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
第一個命令會從 Local1 存放庫尋找名為 Required-Script2
的腳本,並顯示結果。
第二個命令會 Required-Script2
尋找腳本,然後使用管線運算子將它 Install-Script
傳遞給 Cmdlet 來安裝它。
第三個命令會 Get-Command
使用 Cmdlet 來取得 Required-Script2
,然後顯示結果。
第四個命令會 Get-InstalledScript
使用 Cmdlet 來取得 Required-Script2
並顯示結果。
第五個命令會取得 Required-Script2
並使用管線運算子將它傳遞至 Format-List
Cmdlet,以格式化輸出。
範例 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
Cmdlet,以格式化輸出。
範例 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
第一個命令會在 Local1 存放庫中尋找名為 Script-WithDependencies2
的腳本及其相依性,並顯示結果。
第二個命令會 Script-WithDependencies2
安裝 。
第三個命令會 Get-InstalledScript
使用腳本 Cmdlet 來取得已安裝的腳本,並顯示結果。
第四個命令會 Get-InstalledModule
使用 Cmdlet 來取得已安裝的模組,並顯示結果。
第五個命令會 Find-Script
使用 Cmdlet 來尋找名稱開頭 Required-Script
為 的腳本,並顯示結果。
第六個命令會安裝名稱開頭 Required-Script
為 Local1 存放庫中的腳本。
最後一個命令會取得安裝的腳本,並顯示結果。
參數
-AcceptLicense
如果模組需要授權合約,請在安裝期間自動接受授權合約。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllowPrerelease
可讓您安裝標示為發行前版本的腳本。
Proxy Cmdlet 會將此參數對應至 的 Install-PSResource
發行前版本參數。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
在執行 Cmdlet 前提示您確認。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定有權安裝指定套件提供者或來源之腳本的使用者帳戶。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Force
Proxy Cmdlet 會忽略此參數,因為它不受 支援 Install-PSResource
。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
用於管線輸入。 如果直接提供給 InputObject的值,就會擲回錯誤。 使用管線傳遞具有 InputObject 參數的物件。
Type: | PSObject[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MaximumVersion
Proxy Cmdlet 會使用此參數的值來建立 NuGet 版本搜尋字串,以搭配 的 Install-PSResource
Version參數使用。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MinimumVersion
Proxy Cmdlet 會使用此參數的值來建立 NuGet 版本搜尋字串,以搭配 的 Install-PSResource
Version參數使用。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
指定要安裝的腳本名稱陣列。
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NoPathUpdate
Proxy Cmdlet 會忽略此參數,因為它不受 支援 Install-PSResource
。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PassThru
使用 PassThru 參數時, Install-Script
輸出模組的 PSRepositoryItemInfo 物件。 這是您從 Find-Script
Cmdlet 取得的相同資訊。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Proxy
Proxy Cmdlet 會忽略此參數,因為它不受 支援 Install-PSResource
。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
Proxy Cmdlet 會忽略此參數,因為它不受 支援 Install-PSResource
。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Repository
指定已向 Register-PSRepository
Cmdlet 註冊之存放庫的易記名稱。 預設值為所有已註冊的存放庫。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Proxy Cmdlet 會使用此參數的值來建立 NuGet 版本搜尋字串,以搭配 的 Install-PSResource
Version參數使用。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Scope
指定指令碼的安裝範圍。 有效值為︰AllUsers 和 CurrentUser。
AllUsers 範圍可讓模組安裝在電腦所有使用者可存取的位置,也就是 $env:ProgramFiles\WindowsPowerShell\Scripts
。
CurrentUser 範圍可讓模組只安裝至 $HOME\Documents\WindowsPowerShell\Scripts
,讓模組僅適用于目前的使用者。
未定義 範圍 時,預設會根據目前的會話來設定:
- 針對提升許可權的 PowerShell 會話, [範圍 ] 預設為 AllUsers;
- 針對 PowerShellGet 2.0.0 版和更新版本中未提升許可權的 PowerShell 會話, 範圍 為 CurrentUser;
- 針對 PowerShellGet 1.6.7 版和更早版本中未提升許可權的 PowerShell 會話, 未定義範圍 ,且
Install-Module
失敗。
Type: | String |
Accepted values: | CurrentUser, AllUsers |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
輸入
String[]
PSObject[]
輸出
備註
重要
從 2020 年 4 月起,PowerShell 資源庫已不再支援傳輸層安全性 (TLS) 1.0 和 1.1 版。 如果您不是使用 TLS 1.2 或更高版本,您在嘗試存取 PowerShell 資源庫時將會收到錯誤。 使用下列命令來確保您使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
如需詳細資訊,請參閱 PowerShell 部落格中的公告 \(英文\)。