PowerShell เป็นโซลูชันการทำงานอัตโนมัติข้ามแพลตฟอร์มที่ดีและขั้นสูง โดยปกติแล้ว การสร้างและเรียกใช้สคริปต์ PowerShell บนระบบ Windows ทำได้ง่ายมาก แต่คุณอาจถูกขัดขวางด้วย “สคริปต์การรันถูกปิดใช้งานบนระบบนี้” ข้อความแสดงข้อผิดพลาดหากคุณเรียกใช้สคริปต์ในระบบของคุณ หากผู้ดูแลระบบได้กำหนดนโยบายที่จะบล็อกสคริปต์ที่ไม่ได้รับอนุญาตไม่ให้ทำงานบนระบบ คุณจะเห็นข้อความแสดงข้อผิดพลาดที่ระบุ คุณต้องปลดบล็อกนโยบายหรือปรับแต่งรีจิสทรี และคุณสามารถเรียกใช้สคริปต์ใดก็ได้
สารบัญ
แก้ไข 1 – ปรับแต่ง PowerShell
คุณสามารถเรียกใช้โค้ดโดยข้ามนโยบายการดำเนินการปัจจุบันได้ ดังนั้น คุณไม่ต้องยุ่งเกี่ยวกับมัน แต่คุณสามารถเรียกใช้สคริปต์ของคุณได้
1. หลังจากกด ปุ่ม Windows+S คีย์ร่วมกันพิมพ์ “พาวเวอร์เชลล์“.
2. จากนั้นให้แตะที่ "Windows PowerShell” และแตะ “เรียกใช้ในฐานะผู้ดูแลระบบ“.

3. เมื่อหน้าจอ Windows PowerShell ปรากฏขึ้น พิมพ์ รหัสนี้แล้วแก้ไขตามนั้น แล้วกด เข้า เพื่อดำเนินการ
powershell -ExecutionPolicy ByPass -ไฟล์ ชื่อของสคริปต์.ps1
[
เพียงแค่เปลี่ยน “nameofthescript.ps1” ด้วยชื่อของสคริปต์ที่คุณพยายามเรียกใช้
ตัวอย่าง – สมมติ ชื่อของสคริปต์คือ “myscript“คำสั่งจะเป็น-
powershell -ExecutionPolicy ByPass -ไฟล์ myscript.ps1
]

โฆษณา
วิธีนี้ทำให้คุณสามารถเรียกใช้สคริปต์ใดๆ โดยไม่ต้องเปลี่ยนนโยบายการเรียกใช้สคริปต์ปัจจุบัน แต่ถ้าคุณเป็นสคริปต์ที่เรียกใช้งานจำนวนมากหรือสร้างสคริปต์อัตโนมัติ สิ่งนี้จะไม่ทำงาน
คุณต้องดูการแก้ไขครั้งต่อไปสำหรับสิ่งนั้น
แก้ไข 2 – แก้ไขนโยบายการดำเนินการ
คุณสามารถเปลี่ยนการตั้งค่านโยบายการดำเนินการปัจจุบันได้หากต้องการ
1. กด .อีกครั้ง แป้นวินโดว์ และพิมพ์ “พาวเวอร์เชลล์“.
2. ต่อมาให้คลิกขวาที่ “Windows PowerShell” และแตะ “เรียกใช้ในฐานะผู้ดูแลระบบ” เพื่อเปิดเทอร์มินัลด้วยสิทธิ์ของผู้ดูแลระบบ

3. เมื่อมันเปิดออก พิมพ์ คำสั่งนี้เพื่อแก้ไขนโยบายการดำเนินการตามที่คุณเลือก
Set-ExecutionPolicy RemoteSigned
[
คุณสามารถตั้งค่านโยบายการดำเนินการสคริปต์เป็นสี่โหมดที่แตกต่างกัน เหล่านี้คือ -
ถูก จำกัด – โหมดเริ่มต้นที่ PowerShell ไม่อนุญาตให้เรียกใช้สคริปต์ใดๆ บนระบบ
ลงนามทั้งหมด – เฉพาะสคริปต์ที่ลงนามและได้รับอนุญาตเท่านั้นที่จะได้รับอนุญาตให้ทำงานในโหมดนี้
RemoteSigned – ในโหมดนี้ สคริปต์ทั้งหมดที่คุณดาวน์โหลดต้องมีลายเซ็นของลายเซ็นที่เชื่อถือได้
ไม่จำกัด – คุณสามารถเรียกใช้สคริปต์ใดก็ได้ที่คุณต้องการ ไม่มีขอบเขตบนลายเซ็นที่เชื่อถือได้หรือผู้เผยแพร่ที่เชื่อถือได้
ตัวอย่าง – สมมติว่า คุณต้องการตั้งค่านโยบายเป็น 'RemoteSigned' คำสั่งจะเป็น -
Set-ExecutionPolicy RemoteSigned
]
หลังจากนั้นให้กด “Y” และตี เข้า.

4. หากคุณพบข้อความแสดงข้อผิดพลาด ให้เรียกใช้คำสั่งนี้
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
อีกครั้ง เขียนว่า “Y” และตี เข้า.

เมื่อคุณทำเสร็จแล้ว คุณสามารถเรียกใช้สคริปต์ได้อย่างง่ายดายตามที่คุณต้องการ
ทดสอบโดยการรันสคริปต์
บันทึก –
นโยบายการเรียกใช้สคริปต์มักจะถูกจำกัดเนื่องจากสคริปต์ที่กำหนดค่าไม่ถูกต้องหรือสคริปต์ไม่ถูกต้องสามารถสร้างความเสียหายร้ายแรงต่อระบบได้ ดังนั้น เมื่อคุณเรียกใช้สคริปต์เสร็จแล้ว คุณสามารถตั้งค่านโยบายการดำเนินการเป็นโหมด 'จำกัด' ได้อีกครั้ง
1. เข้าถึง PowerShell ด้วยสิทธิ์ของผู้ดูแลระบบ
2. ตอนนี้ เพียงรันโค้ดเดียวนี้เพื่อจำกัดนโยบายไม่ให้ทำงานบนระบบ
จำกัดนโยบายการดำเนินการตั้งค่า
3. อีกครั้ง เขียนว่า “Y” และตี เข้า.

หลังจากนั้น ปิดหน้าต่าง PowerShell
แก้ไข 3 – แก้ไข Registry
หากคุณพบข้อความแสดงข้อผิดพลาดขณะแก้ไขนโยบายการดำเนินการ คุณสามารถแก้ไข Registry Editor ได้
1. แค่เขียน "regedit.msc” ในช่องค้นหาบนแถบงาน
2. หลังจากนั้นให้แตะ “ตัวแก้ไขรีจิสทรี” เพื่อเข้าถึง

คำเตือน – คุณจะปรับแต่งรีจิสทรีของคุณ เนื่องจาก Registry Editor เป็นส่วนสำคัญของระบบของคุณ คุณจึงควรสำรองข้อมูลรีจิสทรีไว้ล่วงหน้า
เมื่อ Registry Editor เปิดขึ้นให้แตะที่ "ไฟล์“. จากนั้นแตะ “ส่งออก” เพื่อสร้างการสำรองข้อมูลรีจิสทรีใหม่บนระบบของคุณ

หลังจากนั้น คุณสามารถใช้ข้อมูลสำรองนี้ได้หากมีสิ่งผิดปกติเกิดขึ้น
3. ทีนี้ ขยายด้านซ้ายมือด้วยวิธีนี้ –
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\ShellIds\ScriptedDiagnostics
4. แล้ว, แตะสองครั้ง “นโยบายการดำเนินการ” ค่าไบนารี

5. แค่เขียน "ไม่จำกัด” ในกล่อง 'ข้อมูลค่า:'
6. จากนั้นแตะ “ตกลง” เพื่อบันทึกการเปลี่ยนแปลงนี้

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