2009-02-20 61 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