New-Guid

创建 GUID。

语法

Default (默认值)

New-Guid
    [<CommonParameters>]

Empty

New-Guid
    [-Empty]
    [<CommonParameters>]

InputObject

New-Guid
    [-InputObject <String>]
    [<CommonParameters>]

说明

该 New-Guid cmdlet 创建版本 7 全局唯一标识符(GUID)。 版本 7 UUID 包含毫秒精度时间戳,可排序。 如果需要脚本中的唯一 ID,可以根据需要创建 GUID。

注释

在 PowerShell 7.6 及更早版本中, New-Guid 创建了版本 4(随机)UUID。 从 PowerShell 7.7 开始,默认更改为版本 7。 如果需要版本 4 UUID,请直接使用 [guid]::NewGuid() 。

示例

示例 1:创建新的 GUID

New-Guid

此命令创建 GUID。 或者,可以将此 cmdlet 的输出存储在变量中,以在脚本中的其他位置使用。

示例 2:创建空 GUID

New-Guid -Empty
Guid
----
00000000-0000-0000-0000-000000000000

示例 3:从字符串创建 GUID

此示例将包含 GUID 的字符串转换为 GUID 对象。

New-Guid -InputObject "d61bbeca-0186-48fa-90e1-ff7aa5d33e2d"
Guid
----
d61bbeca-0186-48fa-90e1-ff7aa5d33e2d

示例 4:将字符串从管道转换为 GUID

此示例将字符串从管道转换为 GUID 对象。

$guidStrings = (
'11c43ee8-b9d3-4e51-b73f-bd9dda66e29c',
'0f8fad5bd9cb469fa16570867728950e',
'{0x01234567, 0x89ab, 0xcdef,{0x01,0x23,0x45,0x67,0x89,0xab,0xcd,0xef}}'
)
$guidStrings | New-Guid
Guid
----
11c43ee8-b9d3-4e51-b73f-bd9dda66e29c
0f8fad5b-d9cb-469f-a165-70867728950e
01234567-89ab-cdef-0123-456789abcdef

示例 5:使用 .NET API 创建特定的 UUID 版本

此示例演示如何直接使用 .NET API 创建特定的 UUID 版本。

[guid]::CreateVersion7()
[guid]::NewGuid()
Guid
----
019588a4-dbe2-7f30-8b9f-4a1c0e5d3a28
d61bbeca-0186-48fa-90e1-ff7aa5d33e2d

版本号显示在 GUID 字符串的第三组中。 版本 7 UUID 从 7 该位置开始(7f30),而版本 4 UUID 显示 4 (48fa)。

参数

-Empty

指示此 cmdlet 创建空 GUID。 空 GUID 在其字符串中具有所有零。

参数属性

类型:SwitchParameter
默认值:None
支持通配符:False
不显示:False

参数集

Empty
Position:Named
必需:False
来自管道的值:False
来自管道的值(按属性名称):False
来自剩余参数的值:False

-InputObject

此参数接受表示 GUID 的字符串,并将其转换为 GUID 对象。

参数属性

类型:String
默认值:None
支持通配符:False
不显示:False

参数集

InputObject
Position:Named
必需:False
来自管道的值:True
来自管道的值(按属性名称):False
来自剩余参数的值:False

CommonParameters

此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。

输出

Guid

此 cmdlet 返回 GUID。

备注

该 cmdlet 将字符串输入传递给 System.Guid 类的构造函数。 构造函数支持多种格式的字符串。 有关详细信息,请参阅 System.Guid(String)。

在没有字符串输入或 Empty 参数的情况下使用时,cmdlet 将创建 RFC 9562 中定义的版本 7 通用唯一标识符(UUID)。

在 PowerShell 7.6 及更早版本中,该 cmdlet 创建了版本 4 (随机) UUID。 如果需要版本 4 UUID,请使用 [guid]::NewGuid()。 若要显式创建版本 7 UUID,请使用 [guid]::CreateVersion7()。

有关详细信息,请参阅 System.Guid.CreateVersion7。