ค้นหาเว็บไซต์

วิธีสร้างตัวเลขสุ่มใน PowerShell


เมื่อเร็วๆ นี้ มีคนถามฉันเกี่ยวกับวิธีการต่างๆ ในการสร้างตัวเลขสุ่มใน PowerShell ฉันแนะนำวิธีการต่าง ๆ พร้อมตัวอย่าง ในบทช่วยสอนนี้ ฉันจะแสดงวิธีสร้างตัวเลขสุ่มใน PowerShell พร้อมตัวอย่าง

หากต้องการสร้างตัวเลขสุ่มใน PowerShell คุณสามารถใช้ Get-Random cmdlet ตัวอย่างเช่น หากต้องการสร้างตัวเลขสุ่มเพียงตัวเดียว เพียงเรียกใช้ Get-Random ซึ่งจะส่งออกจำนวนเต็ม 32 บิตแบบสุ่ม หากคุณต้องการตัวเลขสุ่มภายในช่วงที่ระบุ ให้ใช้ Get-Random -Minimum 1 -Maximum 100 เพื่อรับตัวเลขสุ่มระหว่าง 1 ถึง 99

สร้างตัวเลขสุ่มใน PowerShell

ใน PowerShell คุณสามารถใช้ Get-Random cmdlet เพื่อสร้างตัวเลขสุ่มและเลือกองค์ประกอบสุ่มจากคอลเลกชัน

ฉันขอแสดงตัวอย่างการสร้างตัวเลขสุ่มตัวเดียวใน PowerShell โดยใช้ cmdlet นี้

การใช้ cmdlet Get-Random ที่ง่ายที่สุดคือการสร้างตัวเลขสุ่มตัวเดียว ตามค่าเริ่มต้น Get-Random จะสร้างจำนวนเต็ม 32 บิตแบบสุ่ม ซึ่งจะสร้างตัวเลขสุ่มระหว่าง 0 ถึง Int32.MaxValue (2,147,483,647)

$randomNumber = Get-Random
Write-Output $randomNumber

ตามค่าเริ่มต้น Get-Random จะสร้างจำนวนเต็มสุ่มที่ไม่เป็นลบ ฉันรันสคริปต์ PowerShell ข้างต้นแล้ว และคุณจะเห็นผลลัพธ์ที่แน่นอน มันสร้างตัวเลขสุ่มดังที่แสดงในภาพหน้าจอด้านล่าง

ตรวจสอบตัวแปรส่วนกลางของ PowerShell

สร้างตัวเลขสุ่มภายในช่วงใน PowerShell

ตอนนี้ให้ฉันแสดงวิธีสร้างตัวเลขสุ่มภายในช่วงใน PowerShell

หากคุณต้องการสร้างตัวเลขสุ่มภายในช่วงที่กำหนด คุณจะต้องระบุค่าต่ำสุดและสูงสุดเป็นพารามิเตอร์ พารามิเตอร์ -Minimum ตั้งค่าขอบเขตล่างแบบรวม ในขณะที่พารามิเตอร์ -Maximum ตั้งค่าขอบเขตบนแบบพิเศษ

# Generate a random number between 1 and 100
$randomNumber = Get-Random -Minimum 1 -Maximum 100
Write-Output $randomNumber

ในตัวอย่างนี้ ตัวเลขสุ่มจะอยู่ระหว่าง 1 (รวม) ถึง 100 (ไม่รวม) สิ่งนี้มีประโยชน์สำหรับสถานการณ์ต่างๆ เช่น การสร้าง ID แบบสุ่ม การเลือกดัชนีแบบสุ่ม หรือแอปพลิเคชันใดๆ ที่ต้องใช้ตัวเลขภายในช่วงที่ระบุ

นี่คือผลลัพธ์ที่คุณเห็นในภาพหน้าจอด้านล่าง:

PowerShell: ตัวเลขสุ่มระหว่าง 1 ถึง 10

หากคุณมีข้อกำหนดเฉพาะใดๆ เช่น คุณต้องการสร้างตัวเลขสุ่มระหว่าง 1 ถึง 10 คุณสามารถแก้ไขสคริปต์ PowerShell ข้างต้นได้ดังตัวอย่างด้านล่าง:

# Generate a random number between 1 and 10
$randomNumber = Get-Random -Minimum 1 -Maximum 11
Write-Output $randomNumber

ในตัวอย่างนี้ ตัวเลขสุ่มจะอยู่ระหว่าง 1 (รวม) ถึง 11 (ไม่รวม) เพื่อให้แน่ใจว่าหมายเลข 10 จะรวมอยู่ในผลลัพธ์ที่เป็นไปได้ เมื่อคุณเรียกใช้สคริปต์ PowerShell ข้างต้น สิ่งนี้จะสร้างตัวเลขสุ่มระหว่าง 1 ถึง 10

ตรวจสอบตัวแปรท้องถิ่นของ PowerShell

สร้างตัวเลขสุ่ม 6 หลักใน PowerShell

หากต้องการสร้างตัวเลขหกหลักแบบสุ่ม คุณสามารถระบุช่วงตามนั้นได้ ตัวเลขหกหลักมีตั้งแต่ 100000 ถึง 999999 ดังนั้น คุณจะต้องตั้งค่า -ขั้นต่ำ เป็น 100000 และ -สูงสุด เป็น 1000000 (เนื่องจากค่าสูงสุดไม่รวมอยู่ด้วย)

# Generate a random six-digit number
$randomNumber = Get-Random -Minimum 100000 -Maximum 1000000
Write-Output $randomNumber

คำสั่งนี้ช่วยให้แน่ใจว่าตัวเลขที่สร้างขึ้นจะเป็นจำนวนเต็มหกหลักเสมอ สิ่งนี้มีประโยชน์อย่างยิ่งสำหรับการสร้างรหัสยืนยันแบบสุ่ม ID ผู้ใช้ หรือสถานการณ์อื่น ๆ ที่ต้องใช้หมายเลขที่มีความยาวคงที่

คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่างหลังจากที่ฉันรันสคริปต์โดยใช้โค้ด VS

ตรวจสอบเครื่องมือสร้างรหัสผ่านแบบสุ่ม PowerShell

สร้างตัวเลขสุ่มหลายตัวใน PowerShell

บางครั้ง คุณอาจต้องสร้างตัวเลขสุ่มหลายตัวใน PowerShell

หากต้องการสร้างตัวเลขสุ่มหลายตัว คุณสามารถใช้การวนซ้ำหรือระบุพารามิเตอร์ -Count เพื่อสร้างค่าสุ่มตามจำนวนที่ต้องการ

นี่คือสคริปต์ PowerShell ที่สมบูรณ์

# Using a loop
for ($i = 0; $i -lt 5; $i++) {
    $randomNumber = Get-Random -Minimum 1 -Maximum 100
    Write-Output $randomNumber
}

# Using -Count parameter
$randomNumbers = Get-Random -Minimum 1 -Maximum 100 -Count 5
Write-Output $randomNumbers

เมื่อคุณรันสคริปต์ PowerShell ข้างต้น มันจะสร้างตัวเลขสุ่มหลายตัว ฉันจับภาพหน้าจอด้านล่างหลังจากรันสคริปต์โดยใช้โค้ด VS

อ่านวิธีเพิ่มความคิดเห็นใน PowerShell

ใช้ Get-Random กับ Seed

หากคุณต้องการตัวเลขสุ่มที่ทำซ้ำได้ คุณสามารถใช้พารามิเตอร์ -SetSeed เพื่อระบุค่าเริ่มต้น สิ่งนี้มีประโยชน์สำหรับวัตถุประสงค์ในการทดสอบ โดยที่คุณอาจต้องการสร้างตัวเลขสุ่มลำดับเดียวกันในการรันหลายครั้ง

# Generate a random number with a seed
$randomNumber1 = Get-Random -SetSeed 42
$randomNumber2 = Get-Random -SetSeed 42

Write-Output $randomNumber1
Write-Output $randomNumber2

ทั้ง $randomNumber1 และ $randomNumber2 จะมีค่าเท่ากันเนื่องจากใช้ seed เดียวกัน สิ่งนี้มีประโยชน์อย่างเหลือเชื่อสำหรับการดีบักและทดสอบสคริปต์ที่ใช้ตัวเลขสุ่ม ช่วยให้คุณสร้างเงื่อนไขเดียวกันได้อย่างสม่ำเสมอ คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่าง:

บทสรุป

ในบทช่วยสอนนี้ ฉันอธิบายวิธีสร้างตัวเลขสุ่มใน PowerShell โดยใช้ Get-Random cmdlet เราครอบคลุมถึงการสร้างตัวเลขสุ่มตัวเดียว การระบุช่วง การสร้างตัวเลขสุ่มหลายตัว ฯลฯ ฉันยังได้อธิบายวิธีสร้างตัวเลขสุ่ม 6 หลักใน PowerShell อีกด้วย

บทความที่เกี่ยวข้อง