ตั้งค่าตัวแปรสภาพแวดล้อมโดยใช้ PowerShell
การใช้ $env:ตัวแปร Path ใน PowerShell เพื่อตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชันหรือชั่วคราว ใช้ <รหัส>[System. สภาพแวดล้อม] วิธีการใน PowerShell เพื่อตั้งค่าตัวแปรสภาพแวดล้อมอย่างถาวร
ตัวแปรสภาพแวดล้อมประกอบด้วยค่าที่แอปพลิเคชันในระบบปฏิบัติการ Windows สามารถใช้ได้ ประกอบด้วยคู่ชื่อ-ค่า
ในบทความนี้ เราจะพูดถึงใน PowerShell วิธีการตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชันผู้ใช้ ผนวกค่าเข้ากับตัวแปร และตั้งค่าตัวแปรสภาพแวดล้อมแบบถาวร
PowerShell ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชัน
ใช้ $Env: Path เพื่อสร้างตัวแปรสภาพแวดล้อมสำหรับเซสชัน และขอบเขตจะเป็นสำหรับเซสชันปัจจุบันและขอบเขตกระบวนการ
$Env:GoHugo = "C:\Hugo\bin\"$Env:GoHugo สร้างเส้นทางตัวแปรสภาพแวดล้อมและตั้งค่าโดยใช้=(ตัวดำเนินการกำหนด)
$Env: ตัวแปร Path จะตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชันชั่วคราว และหลังจากปิดหน้าต่าง PowerShell แล้ว จะไม่เก็บค่าตัวแปรไว้
การใช้ Get-ChildItem ใน PowerShell คุณสามารถรับตัวแปรสภาพแวดล้อมได้ดังนี้:
Get-ChildItem Env:GoHugoผลลัพธ์ของสคริปต์ PowerShell ข้างต้นได้รับตัวแปรสภาพแวดล้อมสำหรับเซสชันและเส้นทางตัวแปรสภาพแวดล้อมการพิมพ์เป็น:
ปิดหน้าต่าง PowerShell แล้วเปิดใหม่อีกครั้ง
เรียกใช้คำสั่ง Get-ChildItem อีกครั้งเพื่อรับตัวแปรสภาพแวดล้อมที่สร้างขึ้นในขั้นตอนข้างต้น
โดยจะแสดงข้อความแสดงข้อผิดพลาดเนื่องจากตัวแปรสภาพแวดล้อมยังคงพร้อมใช้งานสำหรับขอบเขตกระบวนการนั้นเท่านั้น
PS C:\> Get-ChildItem Env:GoHugo
Get-ChildItem : Cannot find path 'GoHugo' because it does not exist.
At line:1 char:1
+ Get-ChildItem Env:GoHugo
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (GoHugo:String) [Get-ChildItem], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
PS C:\>ใช้ Powershell เพื่อตั้งค่าตัวแปรสภาพแวดล้อมสำหรับผู้ใช้
หากต้องการสร้างตัวแปรสภาพแวดล้อมอย่างถาวรสำหรับบัญชี ผู้ใช้ ให้ใช้วิธี [System.Environment] เพื่อตั้งค่าตัวแปรสภาพแวดล้อมสำหรับผู้ใช้
[System.Environment]::SetEnvironmentVariable('GoHugo','C:\Hugo\bin',[System.EnvironmentVariableTarget]::User)ในสคริปต์ PowerShell ข้างต้น [System.Environment] ใช้วิธีการ SetEnvironmentVariable เพื่อตั้งค่าตัวแปรสภาพแวดล้อมอย่างถาวรสำหรับผู้ใช้ และค่าจะคงอยู่อย่างถาวร
[ระบบ. สภาพแวดล้อม] ใช้ EnvironmentVariableTarget เป็นผู้ใช้เพื่อตั้งค่าสภาพแวดล้อมสำหรับบัญชีผู้ใช้เท่านั้น
ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเครื่อง
การใช้ [System. สภาพแวดล้อม] คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเครื่องได้ โดยจะใช้ EnvironmentVariableTarget เครื่อง เพื่อตั้งค่าสภาพแวดล้อมสำหรับเครื่องเท่านั้น
[System.Environment]::SetEnvironmentVariable('GoHugo','C:\Hugo\bin',[System.EnvironmentVariableTarget]::Machine)เปิดแอป PowerShell ด้วย เรียกใช้ในฐานะผู้ดูแลระบบ เนื่องจากการตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเครื่องจำเป็นต้องมีการเปลี่ยนแปลงในรีจิสทรี และอาจทำให้เกิดข้อผิดพลาดหากบัญชีผู้ใช้ไม่สามารถเข้าถึงรีจิสทรีที่ร้องขอ
ผลลัพธ์ของสคริปต์ด้านบนเพื่อตั้งค่าเส้นทางตัวแปรสภาพแวดล้อมโดยใช้คำสั่งคือ:
เคล็ดลับเด็ด: วิธีเรียกใช้ PowerShell เป็นบัญชีระบบ!
ผนวกค่าใหม่เข้ากับตัวแปรสภาพแวดล้อม
หากต้องการเพิ่มค่าใหม่ต่อท้ายตัวแปรสภาพแวดล้อม ให้ใช้ += และระบุค่าตัวแปร
ลองพิจารณาตัวอย่างเพื่อผนวกค่าใหม่เข้ากับตัวแปรสภาพแวดล้อมโดยใช้ $Env: Path ดังนี้
$Env:Path += "C:\go\bin\"
โดยจะเพิ่มค่า C:\go\bin ต่อท้ายตัวแปรสภาพแวดล้อม Path และจะพร้อมใช้งานสำหรับเซสชันปัจจุบันเท่านั้น
ใช้ dir env: เพื่อพิมพ์ชื่อตัวแปรสภาพแวดล้อมและเส้นทาง
บทสรุป
ฉันหวังว่าบทความข้างต้นเพื่อตั้งค่าตัวแปรสภาพแวดล้อมสำหรับผู้ใช้และเครื่องจะเป็นประโยชน์กับคุณ
ใช้ $Env:Path เพื่อตั้งค่าตัวแปรสภาพแวดล้อมสำหรับเซสชันปัจจุบันเท่านั้นและขอบเขตกระบวนการ หลังจากปิดเทอร์มินัล PowerShell แล้ว จะไม่เก็บค่า
ใช้เมธอดไลบรารีกรอบงาน .Net [System.Environment] ใน PowerShell เพื่อตั้งค่าตัวแปรสภาพแวดล้อมอย่างถาวรสำหรับผู้ใช้และเครื่องสำหรับการใช้งานถาวร
คุณสามารถค้นหาหัวข้อเพิ่มเติมเกี่ยวกับคำสั่ง PowerShell Active Directory และพื้นฐาน PowerShell ได้ในหน้าแรกของ ShellGeek


