torutkのブログ

ソフトウェア・エンジニアのブログ

Windowsデスクトップ環境でUUID(GUID)を生成する方法

今週末の5月21日(土)は、日本Javaユーザーグループ主催のカンファレンスJJUG CCC 2016 Springが開催されます。昨年春に引き続き、今年も登壇することとなりました。今年はjavapackagerでWindowsネイティブなインストーラーの作成をテーマにしています。

今回予定しているデモの中でUUIDをその場で生成したかったので、Windowsのデスクトップ環境で簡単に(ワンライナーで)UUIDを生成する方法を探してみました。持参するノートPCにはCygwinを入れていないので、Linux系では割と標準的に利用できるuuidgenコマンドが使えません。

Windows OS標準環境

PowerShellの上であれば、ワンライナーでUUIDを生成することができます。

PS D:\> [Guid]::NewGuid()

Guid
----
95997df5-edae-430e-9f65-f0784e1e62c6

PS D:\>

コマンドプロンプトからもpowershellコマンドでワンライナーで実行できます。

D:\>powershell -Command "[Guid]::NewGuid()"

Guid
----
8c2bc627-2b01-42a6-8732-33365a35a407

D:\>

Visual Studioのuuidgen

Visual Studioをインストールすると一緒にuuidgenコマンドがインストールされます。
これを使ってUUIDを生成することができます。今回は持参PCにVisual Studioがないのでやはり使えません。

C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64>uuidgen
e75aa8e8-7d6e-4d77-8d92-2e4ba7cdad42

Java Development Kitのjrunscriptでワンライナー

Java Development KitJDK)には、JavaScriptを実行するjrunscriptコマンドが含まれています。これでJava標準APIjava.util.UUIDを呼び出しUUDIを生成することができます。

D:\>jrunscript -e "print(java.util.UUID.randomUUID())"
a913c6eb-c323-4910-bc6d-09a80e2a9c5a

D:\>