ฉันจะสร้าง UUID จากบรรทัดคำสั่งใน Windows XP ได้อย่างไร


คำตอบ:


12

หากติดตั้ง powershell นี่เป็น commandline ง่ายๆในการรับ guid

powershell -Command "[guid]::NewGuid().ToString()"

คุณสามารถทำให้มันเป็นคำสั่งที่ใช้ซ้ำได้ภายใน PowerShell ด้วย ฟังก์ชัน uuid {[guid] :: NewGuid (). ToString ()} เพียงแค่เรียกใช้ "uuid" ตามต้องการ
Alain O'Dea

ฉันใส่บรรทัดนี้ใน guid.bat ในโฟลเดอร์ PATH เพื่อให้ทำงานใน command prompt และ PowerShell ปกติ
biscuit314

7

วางรหัสต่อไปนี้ในชื่อไฟล์ใหม่ uuid.vbs

set obj = CreateObject("Scriptlet.TypeLib")
WScript.StdOut.WriteLine obj.GUID

จากนั้นคุณสามารถเรียกใช้จากบรรทัดคำสั่งดังนี้:

cscript //NoLogo uuid.vbs

วิธีนี้จะใช้ได้กับคอมพิวเตอร์ทุกเครื่องที่ติดตั้ง Windows Scripting Host ซึ่งแน่นอนว่าจะมีอะไรเพิ่มเติมนอกเหนือจาก Windows 2000 และอาจมี 95/98 / ME เช่นกัน ... แม้ว่าฉันจะไม่มีอินสแตนซ์ที่สะดวกในการตรวจสอบ

หากคุณต้องการลบวงเล็บปีกกาให้แทนที่บรรทัดสุดท้ายด้วยสิ่งนี้

WScript.StdOut.WriteLine Replace(Replace(obj.GUID,"{",""),"}","")

4
เรื่องตลกใน Windows มันมีความเป็นเอกลักษณ์เฉพาะของดาวเคราะห์แต่ละดวง แต่ใน Unix และระบบที่เกี่ยวข้องมันมีความแตกต่างกันไปทั่วทั้งจักรวาล
Bratch

2

คุณยังสามารถใช้คำสั่งนี้ในพร้อมท์คำสั่ง:
wmic path win32_computersystemproduct get uuid


ดูเหมือนว่าจะดีสำหรับ 1 guid
drzaus

4
สิ่งนี้ไม่สร้าง GUID มันเพิ่งแสดง guid ที่มีอยู่ อย่าใช้สิ่งนี้หากคุณต้องการ GUID ที่เป็นเอกลักษณ์
Air2

2
XKCD ที่เกี่ยวข้อง: xkcd.com/221
TripShock

2

หากต้องการคัดลอก GUID ใหม่ไปยังคลิปบอร์ดให้ใช้คำสั่งนี้:

cmd /c powershell.exe -Command "[guid]::NewGuid().ToString()|Set-Clipboard"

คุณสามารถเรียกใช้คำสั่งได้โดยตรงจากกล่องโต้ตอบเริ่ม, เรียกใช้ (WinLogo + R) จากนั้นใช้ Ctrl + V เพื่อวาง GUID ที่สร้างขึ้นซึ่งจะบันทึกไว้ในประวัติการโต้ตอบของคุณ - aka หากคุณใช้บ่อยครั้งมันจะปรากฏขึ้น ขึ้นเป็นข้อเสนอแนะที่นั่น ...


1

จากไลบรารี MSDN: การสร้าง UUID ของอินเทอร์เฟซ


คุณรู้หรือไม่ว่าฉันสามารถดาวน์โหลด "uuidgen" นี้ได้จากที่ไหน
Yazz.com

มันมาพร้อมกับ Visual Studio - ฉันคาดหวังว่ามันจะมาพร้อมกับรุ่นด่วนของ Visual C ++ ซึ่งฉันเชื่อว่าเป็นการดาวน์โหลดฟรีเช่นกัน
Rowland Shaw

1
msdn.microsoft.com/en-us/library/aa373930%28VS.85%29.aspxบอกว่าuuidgenมีการติดตั้งยูทิลิตี้ (Uuidgen.exe) โดยอัตโนมัติเมื่อคุณติดตั้ง Platform Software Development Kit (SDK)
Mehper C. Palavuzlar

ไม่สามารถดาวน์โหลดแยกได้เนื่องจากฉันไม่ได้ใช้ SDK หรือ Visual Studio
Yazz.com

1
@Zubair: ติดตั้ง SDK รับ uuidgen ถอนการติดตั้ง SDK สิ่งอื่นใดเป็นการละเมิดลิขสิทธิ์
harrymc


0

หากระบบปฏิบัติการไม่มี Windows SDK แต่มีตัวแปลภาษา C ด้วย mingw-w64 toolchain ให้คอมไพล์โปรแกรมขนาดเล็กนี้เพื่อสร้าง GUID แบบสุ่ม ฟังก์ชันที่อิมพอร์ตคือUuidCreate (rpcrt4.lib) เพื่อสร้าง UUID แบบสุ่มและStringFromCLSID (ole32.lib) เพื่อแปลง UUID เป็นสตริงที่กว้าง

#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);
}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.