Publish-Script
发布脚本。
语法
Publish-Script
-Path <String>
[-NuGetApiKey <String>]
[-Repository <String>]
[-Credential <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Publish-Script
-LiteralPath <String>
[-NuGetApiKey <String>]
[-Repository <String>]
[-Credential <PSCredential>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
cmdlet Publish-Script
将指定的脚本发布到联机库。
这是 Microsoft.PowerShell.PSResourceGet 中 cmdlet 的代理 Publish-PSResource
cmdlet。 有关详细信息,请参阅 Publish-PSResource。
示例
示例 1:创建脚本文件,向其添加内容并发布
cmdlet New-ScriptFileInfo
创建一个名为 的 Demo-Script.ps1
脚本文件。 Get-Content
显示 的内容 Demo-Script.ps1
。 cmdlet Add-Content
将函数和工作流添加到 Demo-Script.ps1
。
$newScriptInfo = @{
Path = 'D:\ScriptSharingDemo\Demo-Script.ps1'
Version = '1.0'
Author = 'author@contoso.com'
Description = "my test script file description goes here"
}
New-ScriptFileInfo @newScriptInfo
Get-Content -Path $newScriptInfo.Path
<#PSScriptInfo
.VERSION 1.0
.AUTHOR pattif@microsoft.com
.COMPANYNAME
.COPYRIGHT
.TAGS
.LICENSEURI
.PROJECTURI
.ICONURI
.EXTERNALMODULEDEPENDENCIES
.REQUIREDSCRIPTS
.EXTERNALSCRIPTDEPENDENCIES
.RELEASENOTES
#>
<#
.DESCRIPTION
my test script file description goes here
#>
Param()
Add-Content -Path D:\ScriptSharingDemo\Demo-Script.ps1 -Value @"
Function Demo-ScriptFunction { 'Demo-ScriptFunction' }
Workflow Demo-ScriptWorkflow { 'Demo-ScriptWorkflow' }
Demo-ScriptFunction
Demo-ScriptWorkflow
"@
Test-ScriptFileInfo -Path D:\ScriptSharingDemo\Demo-Script.ps1
Version Name Author Description
------- ---- ------ -----------
1.0 Demo-Script author@contoso.com my test script file description goes here
Publish-Script -Path D:\ScriptSharingDemo\Demo-Script.ps1 -Repository LocalRepo1
Find-Script -Repository LocalRepo1 -Name "Demo-Script"
Version Name Type Repository Description
------- ---- ---- ---------- -----------
1.0 Demo-Script Script LocalRepo1 my test script file description goes here
cmdlet Test-ScriptFileInfo
验证 Demo-Script.ps1
。 cmdlet Publish-Script
将脚本发布到 LocalRepo1 存储库。 最后, Find-Script
用于在 LocalRepo1 存储库中搜索Demo-Script.ps1
。
参数
-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
代理 cmdlet 会忽略此参数,因为它不受 支持 Publish-PSResource
。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LiteralPath
指定一个或多个位置的路径。 与 Path 参数不同, LiteralPath 参数的值完全按照输入的方式使用。 不会将任何字符解释为通配符。 如果路径包含转义字符,请用单引号将它们括起来。 单引号会告知 Windows PowerShell 不要将所有字符都解释为转义序列。
参数映射到 cmdlet 的 Publish-PSResource
Path 参数。
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NuGetApiKey
指定要用于将脚本发布到联机库的 API 密钥。 API 密钥是联机库中配置文件的一部分。 有关详细信息,请参阅 管理 API 密钥。
参数映射到 cmdlet 的 Publish-PSResource
ApiKey 参数。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
指定一个或多个位置的路径。 允许使用通配符。 默认位置为当前目录。
Type: | String |
Position: | Named |
Default value: | <Current location> |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-Repository
指定已通过运行 Register-PSRepository
注册的存储库的友好名称。
Type: | String |
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 |
输入
输出
备注
PowerShell 库不再支持传输层安全性 (TLS) 版本 1.0 和 1.1。 必须使用 TLS 1.2 或更高版本。 使用以下命令可以确定使用的是 TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12