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

วิธีการตั้งค่าและรับตัวแปรสภาพแวดล้อมใน PowerShell


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

หากต้องการตั้งค่าตัวแปรสภาพแวดล้อมใน PowerShell คุณสามารถใช้ตัวแปร $env ตามด้วยชื่อตัวแปรแล้วกำหนดค่าให้กับตัวแปรนั้น ตัวอย่างเช่น หากต้องการตั้งค่าตัวแปร “MyVariable” เป็น “Hello, World!” คุณจะต้องใช้คำสั่ง $env:MyVariable="Hello, World!" เมธอดนี้จะตั้งค่าตัวแปรชั่วคราว ทำให้ใช้ได้เฉพาะในเซสชัน PowerShell ปัจจุบันเท่านั้น

ตั้งค่าตัวแปรสภาพแวดล้อมใน PowerShell

ตัวแปรสภาพแวดล้อมคือค่าไดนามิกที่ส่งผลต่อวิธีการทำงานของกระบวนการและแอปพลิเคชันบนคอมพิวเตอร์ พวกเขาสามารถจัดเก็บข้อมูลเช่นเส้นทางของไฟล์ การกำหนดค่าระบบ และการตั้งค่าของผู้ใช้ ใน Windows ตัวแปรสภาพแวดล้อมอาจเป็นแบบเฉพาะผู้ใช้หรือทั้งระบบก็ได้

ตอนนี้ให้ฉันแสดงวิธีการตั้งค่าตัวแปรสภาพแวดล้อมใน PowerShell

PowerShell เสนอวิธีตั้งค่าตัวแปรสภาพแวดล้อมได้หลายวิธี มาดูแนวทางทั่วไปบางประการกัน

1. การใช้ตัวแปร $env

วิธีที่ง่ายที่สุดในการตั้งค่าตัวแปรสภาพแวดล้อมใน PowerShell คือการใช้ตัวแปร $env ตามด้วยชื่อตัวแปร นี่คือตัวอย่าง:

$env:MyVariable = "Hello, World!"

ในกรณีนี้ เราตั้งค่าของตัวแปรสภาพแวดล้อมชื่อ “MyVariable” เป็น “Hello, World!” วิธีนี้จะตั้งค่าตัวแปรชั่วคราว ซึ่งหมายความว่าตัวแปรจะพร้อมใช้งานในเซสชัน PowerShell ปัจจุบันเท่านั้น

คุณสามารถดูสคริปต์ได้หลังจากที่ฉันดำเนินการแล้ว

ตรวจสอบตัวแปรการพิมพ์ PowerShell

2. การใช้ Set-Item Cmdlet

อีกวิธีหนึ่งในการตั้งค่าตัวแปรสภาพแวดล้อมใน PowerShell คือการใช้ cmdlet Set-Item cmdlet นี้ช่วยให้คุณสามารถแก้ไขค่าของตัวแปรที่มีอยู่หรือสร้างตัวแปรใหม่ได้ นี่คือตัวอย่าง:

Set-Item -Path Env:\MyVariable -Value "Hello, PowerShell!"

ในกรณีนี้ เราใช้ Set-Item cmdlet เพื่อตั้งค่าของ “MyVariable” เป็น “Hello, PowerShell!” พารามิเตอร์ -Path ระบุตำแหน่งของตัวแปรสภาพแวดล้อม และพารามิเตอร์ -Value จะตั้งค่าของมัน

3. ตั้งค่าตัวแปรสภาพแวดล้อมแบบถาวร

หากคุณต้องการตั้งค่าตัวแปรสภาพแวดล้อมที่คงอยู่ในเซสชัน PowerShell และการรีสตาร์ทระบบ คุณสามารถใช้เมธอด [Environment]::SetEnvironmentVariable() ได้ นี่คือตัวอย่าง:

[Environment]::SetEnvironmentVariable("MyVariable", "Persistent Value", "User")

ในกรณีนี้ เราตั้งค่า "MyVariable" เป็น "Persistent Value" สำหรับผู้ใช้ปัจจุบัน พารามิเตอร์ตัวที่สามระบุขอบเขตของตัวแปรซึ่งอาจเป็น “ผู้ใช้” หรือ “เครื่อง”

ตรวจสอบรับชื่อคอมพิวเตอร์ใน PowerShell

PowerShell: ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชัน

ตัวแปรสภาพแวดล้อมชั่วคราวได้รับการตั้งค่าตามระยะเวลาของเซสชัน PowerShell เมื่อปิดเซสชันแล้ว ตัวแปรเหล่านี้จะถูกละทิ้ง

หากต้องการตั้งค่าตัวแปรสภาพแวดล้อมชั่วคราว ให้ใช้คำนำหน้า $env: ตามด้วยชื่อตัวแปรและตัวดำเนินการกำหนด (=) นี่คือตัวอย่าง:

$env:MyTempVar = "TemporaryValue"

คำสั่งนี้ตั้งค่าตัวแปรสภาพแวดล้อมชื่อ MyTempVar ด้วยค่า TemporaryValue

PowerShell: ตั้งค่าตัวแปรสภาพแวดล้อมอย่างถาวร

ตัวแปรสภาพแวดล้อมถาวรยังคงมีอยู่ในเซสชัน PowerShell และการรีบูตระบบ หากต้องการตั้งค่าตัวแปรสภาพแวดล้อมแบบถาวร คุณต้องใช้เมธอด [System.Environment]::SetEnvironmentVariable

หากต้องการตั้งค่าตัวแปรสภาพแวดล้อมเฉพาะผู้ใช้ ให้ใช้คำสั่งต่อไปนี้:

[System.Environment]::SetEnvironmentVariable("MyUserVar", "UserValue", "User")

คำสั่งนี้ตั้งค่าตัวแปรสภาพแวดล้อมชื่อ MyUserVar พร้อมค่า UserValue สำหรับผู้ใช้ปัจจุบัน

ตรวจสอบการตั้งค่าตัวแปรใน PowerShell

PowerShell: ตั้งค่าระดับเครื่องตัวแปรสภาพแวดล้อม

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

[System.Environment]::SetEnvironmentVariable("MySystemVar", "SystemValue", "Machine")

คำสั่งนี้ตั้งค่าตัวแปรสภาพแวดล้อมชื่อ MySystemVar ด้วยค่า SystemValue สำหรับทั้งระบบ

รับตัวแปรสภาพแวดล้อมใน PowerShell

ตอนนี้เรารู้วิธีการตั้งค่าตัวแปรสภาพแวดล้อมแล้ว เรามาสำรวจวิธีดึงข้อมูลค่าใน PowerShell กันดีกว่า

1. การใช้ตัวแปร $env

หากต้องการรับค่าของตัวแปรสภาพแวดล้อมใน PowerShell คุณสามารถใช้ตัวแปร $env ตามด้วยชื่อตัวแปรได้ นี่คือตัวอย่าง:

$value = $env:MyVariable
Write-Host $value

ในกรณีนี้ เราจะดึงค่าของ “MyVariable” และจัดเก็บไว้ในตัวแปร $value จากนั้นเราใช้ Write-Host เพื่อแสดงค่า

ฉันรันสคริปต์ PowerShell ข้างต้น และคุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่าง:

2. การใช้ Get-ChildItem Cmdlet

อีกวิธีในการรับตัวแปรสภาพแวดล้อมใน PowerShell คือการใช้ cmdlet Get-ChildItem กับไดรฟ์ Env: นี่คือตัวอย่าง:

Get-ChildItem Env:

คำสั่งนี้จะดึงข้อมูลตัวแปรสภาพแวดล้อมทั้งหมดที่กำหนดไว้ในเซสชันปัจจุบัน และแสดงชื่อและค่าของตัวแปรเหล่านั้น

3. การใช้ [System.Environment]

สำหรับแนวทาง .NET คุณสามารถใช้:

[System.Environment]::GetEnvironmentVariable("MY_VARIABLE", "User")

สิ่งนี้จะดึงค่าของตัวแปรสภาพแวดล้อมเฉพาะสำหรับผู้ใช้ปัจจุบัน แทนที่ “User” ด้วย “Machine” สำหรับตัวแปรทั้งระบบ

บทสรุป

ในบทช่วยสอนนี้ ฉันอธิบายวิธีการตั้งค่าและรับตัวแปรสภาพแวดล้อมใน PowerShell เราได้ครอบคลุมวิธีการต่างๆ รวมถึงการใช้ตัวแปร $env, cmdlet Set-Item และเมธอด [Environment]::SetEnvironmentVariable() . นอกจากนี้เรายังกล่าวถึงวิธีการดึงค่าของตัวแปรสภาพแวดล้อมใน PowerShell โดยใช้ตัวแปร $env และ cmdlet Get-ChildItem

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