New Guid - PowerShell


Overview

New-Guid generates a new globally unique identifier (GUID) in the form of a 128-bit number represented as a hexadecimal string. GUIDs are widely used for identifying and tracking objects within systems, databases, and applications.

Syntax

New-Guid [-Force]

Options/Flags

  • -Force: Omit default hyphen character in the generated GUID.

Examples

Generate a single GUID:

PS> New-Guid

Output:

3a010d38-940d-421f-b53b-c25c55ce0644

Generate multiple GUIDs:

PS> 10 | ForEach-Object { New-Guid }

Output:

3a010d38-940d-421f-b53b-c25c55ce0644
4846d962-5082-474c-9f68-93a4a0b1b858
f94da11d-b597-468a-a2b9-c58b7c0b0526
...

Generate a GUID without hyphens using -Force:

PS> New-Guid -Force

Output:

3a010d38940d421fb53bc25c55ce0644

Common Issues

  • Duplicate GUIDs: While GUIDs are designed to be unique, they can still collide in rare cases. To avoid this, use the Guid.NewGuid() method in .NET code, which uses a better algorithm for generating GUIDs.

Integration

Combine with Get-Item: Retrieve properties of a file using a GUID as the identifier:

PS> $guid = New-Guid
PS> Get-Item "C:\path\to\file" -$guid

Pass to New-Object: Create an object with a unique identifier:

PS> $object = New-Object -TypeName MyClass -ArgumentList `
> $([guid]::NewGuid().ToString())
  • Get-Guid: Retrieves information about an existing GUID.
  • System.Guid (.NET): Provides functionality for creating and manipulating GUIDs.