使用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