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

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


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

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

บางครั้ง คุณอาจต้องลบตัวแปรสภาพแวดล้อมที่ไม่จำเป็นอีกต่อไป เรามาดูวิธีการทำกัน

ประเภทของตัวแปรสภาพแวดล้อม

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

หมายเหตุ: คุณควรมีสิทธิ์ของผู้ดูแลระบบ หากคุณวางแผนที่จะแก้ไขตัวแปรระดับระบบ

การใช้ Remove-Item Cmdlet

วิธีที่ง่ายที่สุดในการลบตัวแปรสภาพแวดล้อมใน PowerShell คือการใช้ cmdlet Remove-Item

นี่คือตัวอย่างการลบตัวแปรสภาพแวดล้อมระดับผู้ใช้ชื่อ "MyVariable":

Remove-Item Env:\MyVariable

หากต้องการลบตัวแปรสภาพแวดล้อมระดับระบบ คุณต้องระบุพารามิเตอร์ -Path ด้วยขอบเขต Machine:

Remove-Item -Path Env:\MyVariable -Scope Machine

โดยการตั้งค่าตัวแปรให้เป็นสตริงว่าง

คุณยังสามารถลบตัวแปรสภาพแวดล้อมใน PowerShell ได้ด้วยการตั้งค่าเป็นสตริงว่าง ด้วยวิธีนี้ มันจะลบตัวแปรออก ดังตัวอย่างด้านล่าง:

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

แทนที่ "User" ด้วย "Machine" เพื่อลบตัวแปรระดับระบบ

การใช้รีจิสทรี

ตัวแปรสภาพแวดล้อมจะถูกจัดเก็บไว้ใน Windows Registry ดังนั้น คุณสามารถลบรีจิสตรีคีย์ที่เกี่ยวข้องได้ ซึ่งจะลบตัวแปรทางอ้อม

สำหรับตัวแปรระดับผู้ใช้ ให้ลบคีย์ใต้:

HKEY_CURRENT_USER\Environment

สำหรับตัวแปรระดับระบบ ให้ลบคีย์ภายใต้:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

การแก้ไขรีจิสทรีโดยตรงอาจมีความเสี่ยง ดังนั้นจึงขอแนะนำให้ใช้วิธี PowerShell เว้นแต่จะจำเป็นจริงๆ

ฟื้นฟูสิ่งแวดล้อม

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

$env:MyVariable = $null

นี่เป็นการล้างตัวแปรออกจากเซสชันปัจจุบัน

หรือคุณสามารถเริ่มเซสชัน PowerShell ใหม่เพื่อโหลดสภาพแวดล้อมที่อัปเดตได้

บทสรุป

ในบทช่วยสอนนี้ ฉันได้อธิบายวิธีการต่างๆ เพื่อลบตัวแปรสภาพแวดล้อมโดยใช้ PowerShell Remove-Item cmdlet และการตั้งค่าตัวแปรเป็นสตริงว่างเป็นวิธีที่ปลอดภัยและง่ายที่สุดในการลบตัวแปรสภาพแวดล้อม ฉันแนะนำให้ใช้ทั้งสองวิธีนี้ด้วย การปรับเปลี่ยนรีจิสทรีโดยตรงก็เป็นไปได้เช่นกันแต่มีความเสี่ยงมากกว่า อย่าลืมรีเฟรชสภาพแวดล้อม PowerShell ของคุณหลังจากทำการเปลี่ยนแปลงเพื่อให้สอดคล้องกับการอัปเดตในเซสชันปัจจุบันของคุณ

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

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