25

是否有适用于 Unix 和 Windows 的命令行工具使用相同的算法为两个平台创建GUID ?

4

6 回答 6

32

'e2fsprogs' 项目维护uuidgen实用程序。

http://e2fsprogs.sourceforge.net/

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

对于 Windows,我建议安装 Cygwin,'e2fsprogs' 包可以从那里获得!

作为j4y报告,该实用程序在 MAC OS 下可用。

赶紧跑:

  $ uuidgen -r # 基于随机的 UUID/GUID
  $ uuidgen -t # 基于时间的 UUID/GUID
于 2010-07-15T20:54:26.860 回答
3

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

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

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

于 2009-02-20T15:07:24.027 回答
3

一些有用的知识:

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

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

使用 SYS_GUID() 创建并存储为 RAW[16] 的 Oracle GUID 被订购:

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

您可能会发现这个在线 GUID 转换器很方便。我不确定该来源是否可供您自己使用,但应该不难弄清楚。

于 2009-02-20T20:27:09.717 回答
0

有大量的在线应用程序可以做到这一点。

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

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

于 2009-02-20T15:24:52.253 回答
0

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

uuidgen.exe
于 2009-10-12T13:21:12.217 回答
0

如果你在一个已经有 python 的系统上,你可以简单地在命令行上运行它:

python -c 'import uuid; print(uuid.uuid4())'

(Python 预装在许多 Linux 发行版以及 MacOS 上)

于 2021-04-22T10:39:48.540 回答