使用batch file在Windows中生成GUID

如何在Windows中使用命令行运行的batch file中生成GUID?

Windows SDK带有一个名为uuidgen的工具(如果您有Visual Studio,您将拥有Windows SDK,并且需要运行Visual Studio命令提示符来设置正确的path)。

 C:\>uuidgen 

这将输出一个新的GUID,例如

cc23b318-156e-473f-aa6e-517bf091a0f0

1.用内容创build一个名为myuuid.vbs的文件

 set obj = CreateObject("Scriptlet.TypeLib") WScript.StdOut.WriteLine Mid(obj.GUID, 2, 36) 

2.goto命令提示符

cscript //NoLogo myuuid.vbs

使用JAVA代码

  UUID uuid = UUID.randomUUID(); String randomUUIDString = uuid.toString(); 

如果你有PowerShell环境,试试这个。

 FOR /F %a IN ('POWERSHELL -COMMAND "$([guid]::NewGuid().ToString())"') DO ( SET NEWGUID=%a ) 

然后准备从%NEWGUID%

容易在PowerShell中做

 [guid]::NewGuid() 

没有可用的内置命令。 要么写自己的,要么得到一个现有的。

一个简单的程序输出一个GUID到控制台可以用C#编写:

 class Program { static void Main(string[] args) { System.Console.WriteLine(System.Guid.NewGuid().ToString()); } } 

将上面的片段放在文件名guidgen.cs中,然后使用下面的命令行进行编译(.NET Framework 2.0将不得不安装在您的系统上):

 %WINDIR%\Microsoft.NET\Framework\v2.0.50727\csc.exe guidgen.cs 

这将创build一个名为guidgen.exe的可执行文件。

如果你想用纯cmd命令来做,你可以使用类似的东西(这不是一个真正的GUID,但它可以帮助取决于你的上下文):

 @call :GetGuid NewGuid @echo My new GUID : %NewGuid% @goto :eof :GetGuid @set _guid=%computername%%date%%time% @set _guid=%_guid:/=% @set _guid=%_guid:.=% @set _guid=%_guid: =% @set _guid=%_guid:,=% @set _guid=%_guid::=% @set _guid=%_guid:-=% @set %1=%_guid% @goto :eof