Så här fixar du "körande skript är inaktiverat på det här systemet" i PowerShell på Windows 10

click fraud protection

Om du vet hur man skriver enkla PowerShell- eller Batch-skript kan du automatisera en hel del saker på Windows 10. Faktum är att även om du måste lägga lite tid på att skriva det perfekta manuset till något, kommer den tid som sparas när det väl är bra att gå att vara värt tiden du lagt ner på att skriva det. Som sagt, skript kan vara farliga, vilket är när du försöker köra skript i PowerShell, får du ett ganska långt felmeddelande som i huvudsak säger att "körning av skript är inaktiverat på det här systemet".

Detta är en säkerhetsåtgärd i PowerShell för att förhindra att skadliga skript körs och potentiellt skada systemet. Naturligtvis kommer ett skript som du har skrivit själv inte att vara skadligt och bör kunna köras. För att åtgärda det här problemet måste du ändra exekveringspolicyn i PowerShell. Här är hur.

Fix körande skript är inaktiverat på det här systemet

Öppna PowerShell med administratörsrättigheter och kör följande kommando.

Get-ExecutionPolicy -List

Detta kommer att visa dig körningspolicyn som har ställts in för din användare och för din maskin. Det är troligt att båda, eller åtminstone CurrentUser-policyn är inställd på Begränsad.

instagram viewer

För att åtgärda felet "körande skript är inaktiverat på det här systemet" måste du ändra policyn för CurrentUser. För att göra det, kör följande kommando.

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Bekräfta att du vill göra ändringen så kommer du att kunna köra skriptet.

Detta bör tillåta dig att köra de flesta skript men om du fortfarande får samma fel måste du förmodligen ändra körningspolicyn för maskinen. Du kan ändra det föregående kommandot för att göra det, men du behöver administratörsrättigheter för att göra detta.

Kör det här kommandot.

Set-ExecutionPolicy RemoteSigned -Scope LocalMachine

Bekräfta att du vill göra ändringen och försök sedan köra skriptet.

Detta borde göra susen om du har skrivit skriptet själv, men om du laddade ner det online och det inte är signerat, måste du ändra exekveringspolicyn till Obegränsad. För att göra det, ersätt "RemoteSigned" i alla ovanstående kommandon med "Obegränsad". Var mycket försiktig med vilka skript du kör om du laddar ner dem. De kan vara farliga.

Set-ExecutionPolicy

Detta är ett ganska enkelt kommando för att ställa in exekveringspolicy på PowerShell. Det här kommandot kan ha fyra olika parametrar eller tillstånd: Begränsad, Allsignerad, Remote Signed och Unrestricted.

Switchen -Scope definierar vad policyändringen tillämpas på. När du anger "CurrentUser" tillämpas den endast på den aktuella användaren, och när du anger "LocalMachine" tillämpas den på hela systemet

watch instagram story