[c#] 이 시스템에서 스크립트 실행이 비활성화되어 있으므로 ps1을로드 할 수 없습니다.

powershellC #에서 스크립트 를 실행하려고합니다 .

우선은 설정 ExecutionPolicyUnrestricted하고 스크립트가 지금부터 실행됩니다 PowerShell ISE.

이제 이것은 C # 내 코드입니다.

class Program
{
    private static PowerShell ps;
    static void Main(string[] args)
    {
        ps = PowerShell.Create();
        string ps1File = Path.Combine(Environment.CurrentDirectory, "script.ps1");
        ExecuteScript(ps1File);
        Console.ReadLine();
    }

    static void ExecuteScript(string script)
    {
        try
        {
            ps.AddScript(script);
            Collection<PSObject> results = ps.Invoke();
            Console.WriteLine("Output:");
            foreach (var psObject in results)
            {
                Console.WriteLine(psObject);
            }
            Console.WriteLine("Non-terminating errors:");
            foreach (ErrorRecord err in ps.Streams.Error)
            {
                Console.WriteLine(err.ToString());
            }
        }
        catch (RuntimeException ex)
        {
            Console.WriteLine("Terminating error:");
            Console.WriteLine(ex.Message);
        }
    }
}

출력은 다음과 같습니다.

이 시스템에서 스크립트 실행이 비활성화되어 있으므로 ps1을로드 할 수 없습니다. 자세한 내용은 http://go.microsoft.com/fwlink/?LinkID=135170 에서 about_Execution_Policies를
참조하십시오 .



답변

이것은 현재 사용자가 정의되지 않은 ExecutionPolicy.

다음을 시도해 볼 수 있습니다.

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted


답변

관리 모드에서 PowerShell을 열고 다음 명령을 실행합니다.

Set-ExecutionPolicy RemoteSigned


답변

이 코드를 powershell 또는 cmd에서 실행하십시오.

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass


답변

Visual Studio 코드를 사용하는 경우 :

  1. 터미널 열기
  2. 다음 명령을 실행합니다. Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
  3. 그런 다음 protractor conf.js 명령을 실행하십시오.

이것은 각도기 테스트 스크립트 실행과 관련이 있으며 동일한 문제에 직면하여 이렇게 해결되었습니다.


답변

다음 세 단계는이 시스템 오류에서 실행중인 스크립트가 비활성화됨을 수정하는 데 사용됩니다.

Step1 : 이런 종류의 문제를 해결하려면 관리자 모드에서 Power Shell을 시작해야합니다.

2 단계 : 다음 명령을 입력합니다. set-ExecutionPolicy RemoteSigned 3 단계 : 확인을 위해 Y를 누릅니다.

자세한 내용은 다음을 방문하십시오 https://youtu.be/J_596H-sWsk


답변

PowerShell 실행 정책은 기본적으로 제한됨으로 설정됩니다. Set-ExecutionPolicy cmdlet을 사용하여 PowerShell 실행 정책을 변경할 수 있습니다. 외부 스크립트를 실행하려면 정책을 RemoteSigned로 설정합니다.

PS C :> Set-ExecutionPolicy RemoteSigned 아래는 PowerShell의 네 가지 실행 정책 목록입니다.

제한됨 – 스크립트를 실행할 수 없습니다. AllSigned – 신뢰할 수있는 게시자가 서명 한 스크립트 만 실행할 수 있습니다. RemoteSigned – 다운로드 한 스크립트는 신뢰할 수있는 게시자가 서명해야합니다. 제한 없음 – 모든 Windows PowerShell 스크립트를 실행할 수 있습니다.


답변

관리자 모드에서 windows powershell을 열고 다음 명령과 그 작업을 실행하십시오 VOILA !!

Set-ExecutionPolicy RemoteSigned