命令行(使用批處理)生成GUID的幾種方法


命令行-使用批處理fi在Windows中生成GUID

如何在Windows中使用命令行運行的批處理文件中生成GUID?

Pratik asked 2020-06-30T01:45:43Z
8個解決方案
73 votes

Windows SDK附帶了一個名為uuidgen的工具(如果您擁有Visual Studio,則將擁有Windows SDK,並且需要運行Visual Studio命令提示符來設置正確的路徑)。

rem uuidgen.exe的路徑可能跟筆者的不一樣,可以換成自己電腦上的路徑
rem 生成一批uuid,-h幫助,-c大寫,-n5生成5個
rem "C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\uuidgen.exe" -c -n5
C:\>uuidgen

這將輸出一個新的GUID,例如

SABIA18156-473F-ATI-517BF091A0F0

Tim Robinson answered 2020-06-30T01:46:07Z
25 votes

1.使用內容創建一個名為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();
Jigar Joshi answered 2020-06-30T01:46:36Z
23 votes

如果您具有Powershell環境,請嘗試此操作。

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

如果是在批處理bat文件中,請嘗試此操作。

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

然后准備好%NEWGUID%的Guid值

user2441603 answered 2020-06-30T01:47:00Z
19 votes

在Powershell中輕松完成

[guid]::NewGuid()
Jonas answered 2020-06-30T01:47:20Z
7 votes

沒有內置命令可以執行此操作。 要么自己寫,要么現有一個。

可以使用C#編寫一個將GUIDE輸出到控制台的簡單程序:

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 

這將創建一個名為guidgen.exe的可執行文件。

Dirk Vollmar answered 2020-06-30T01:47:54Z
4 votes

如果要使用純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
efdummy answered 2020-06-30T01:48:14Z
4 votes

這會將新的GUID復制到剪貼板:

POWERSHELL -c "[guid]::NewGuid().ToString().ToUpper()" | CLIP
Michel de Ruiter answered 2020-06-30T01:48:34Z
0 votes

如果系統操作系統沒有Windows SDK,但是具有帶有mingw-w64工具鏈的C編譯器,則編譯該小程序以生成隨機GUID。 導入的函數是用於創建隨機UUID的UuidCreate(rpcrt4.lib)和用於將UUID轉換為寬字符串的StringFromCLSID(ole32.lib)。

#include <Windows.h>
#include <stdio.h>

/*
 * int UuidCreate(GUID *id);
 * int StringFromCLSID(GUID *id, wchar_t **str);
 * Libraries: Rpcrt4.lib Ole32.lib
 */

int main(void)
{
    GUID id;
    wchar_t *str = NULL;

    UuidCreate(&id);
    StringFromCLSID(&id, &str);
    wprintf(L"%ls\n", str);
}
Biswapriyo answered 2020-06-30T01:48:54Z

出處:https://www.itranslater.com/qa/details/2583085073859871744


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM