実際にGUIDを生成する
GUIDは、本来プログラムが生成して、プログラムが使うものなので、ユーザーが直接扱うことはほとんどないが、プログラム開発などで重複しないIDとしてUUIDが必要になることがある。この場合、Windowsでは大きく2つの方法がある。
1つは、PowerShellから.NET Framework/.NETのGUID生成機能を呼び出してGUIDを生成する方法だ。もう1つは、WSLでuuidgenコマンドを使う方法だ。どの方法でもUUIDバージョン4のUUID(=GUID)を生成できる。
PowerShellの場合、以下のように
[guid]::NewGuid()
コマンドを使う。
バイト列が必要な場合には、
[guid]::NewGuid().ToByteArray()
とすればよい。
WSLを使えるなら、uuidgenコマンドが利用できる。単純に
uuidgen
とすれば、UUID文字列が出力される。
なお、オプション「-r」を付けると乱数ベースのUUID(バージョン4)が、オプション「-t」で時間ベースのUUID(バージョン1)が出力される。オプションなしでは、乱数ベースのUUIDを生成しようとするが、乱数発生デバイス(/dev/random)がないと時間ベースのUUIDを出力する。
なお、WSLの場合、MACアドレスは仮想環境のMACアドレスとなり、ベンダーコードは、Microsoftのもの(00:5d:19)となる。ローカル環境では、重複はしないが、他の環境のWSLとは同じになる可能性があるため、できれば乱数ベースのUUIDを使ったほうがいいだろう。uuidgenで生成した時間ベース、乱数ベースのUUIDはどちらもGUIDとして利用できる。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第548回
PC
Windows 11 Ver.26H2の配布が開始 すでに5回目のメジャーアップデートで「次」も気になる頃合い!? -
第547回
PC
Windows 11におけるファイルとフォルダの削除の仕組みについて -
第546回
PC
Windows 11でBluetoothオーディオ共有(Auracast)を試してみる -
第545回
PC
PowerShellにおけるwinget -
第544回
PC
Windows 11 Ver.26H2プレビュー公開 さらにその次のWindowsも少し見えてきた -
第543回
PC
「WMIC」が消滅 コマンドが消える「WMI」とはそもそも何? -
第542回
PC
PowerToysの最新版では、今使っているアプリの複数ウィンドウをショートカットで切り替えられる便利機能が追加 -
第541回
PC
AIを組み込んだWindowsターミナル「Intelligent Terminal」をインストールして試してみる -
第540回
PC
Windows 11に付属の新しいOutlookでアカウント設定をする -
第539回
PC
Microsoft製の新しいWindows用日本語入力「Copilot Keyboard」を使う -
第538回
PC
PowerShellをシェルとして使うためのポイント【情報表示のやり方】 - この連載の一覧へ












