2009-02-20 64 views

回答

2

我不知道是否有一个命令行工具可用,但你可以简单的写一个在C#(它应该使用Mono运行):

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

您可以轻松地修改程序来更改格式的GUID,将其复制到剪贴板或任何适合您需要的内容。

+0

嗯,我需要确保它们使用相同的算法生成GUID ,由于Mono不是官方的MS,我不知道他们是否使用相同的算法,你有关于这个的任何规格? – 2009-02-20 15:10:18

+0

Mono可能会使用不同的实现,但您可以在Windows和Unix/Linux上使用Mono运行该工具。仅仅因为我很好奇:为什么你需要在两个平台上使用相同的算法? GUID将仍然是唯一的,因为GUID中的一个字段指定使用的算法。 – 2009-02-20 15:29:29

+2

GUID的整体思想是,如果算法和随机数生成器达到标准,则它是全局唯一的。我认为用不同的算法生成GUID是安全的。 – Wedge 2009-02-20 20:38:44

0

有吨的online apps这样做。

如果您使用PHP,您可以使用uniqid函数。

我发现一个纯Java程序在http://jug.safehaus.org/。这应该在你可以安装Java的任何地方工作。

2

一些有用的东西知道:

Guid.ToByteArray()在C#和SQL Server GUID类型的字节顺序是:

 { 3, 2, 1, 0, 5, 4, 7, 6, 8, 9, 10, 11, 12, 13, 14, 15 }; 

一个Oracle GUID使用SYS_GUID(创建)和作为存储已订购RAW [16]:

 { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; 

您可能会发现这个online GUID converter方便。我不确定源代码是否可用于您自己的使用,但解决它不应该太难。

0

在Windows XP中,您可以在命令窗口中使用以下内容。

uuidgen.exe 
29

'的e2fsprogs' 项目保持的uuidgen效用。

http://e2fsprogs.sourceforge.net/

它已经可以在任何Linux/BSD发行版*。

对于Windows,我推荐安装Cygwin'e2fsprogs'软件包!

如报告j4y此实用程序在MAC OS下可用。

只要运行:

 
    $ uuidgen -r # random based UUID/GUID 
    $ uuidgen -t # time based UUID/GUID