업그레이드 - windows 7 powershell 5.0 download




PowerShell은 "스크립트 실행이이 시스템에서 비활성화되어 있습니다."라고 말합니다. (15)

  1. PowerShell을 관리자로 열고 Set-ExecutionPolicy -Scope CurrentUser를 실행합니다.
  2. RemoteSigned를 제공하고 Enter 키를 누릅니다.
  3. Set-ExecutionPolicy -Scope CurrentUser 실행
  4. Unrestricted 를 입력하고 Enter 키를 누릅니다.

명령 프롬프트에서 PowerShell 스크립트를 호출하는 .cmd 파일을 실행하려고하는데 아래 오류가 나타납니다.

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

나는 set-executionpolicy unrestricted get-executionpolicy 했으며 PowerShell에서 get-executionpolicy 를 실행할 때 다시 unrestricted .

// Powershell에서 출력

PS C : \ Users \ Administrator> get-executionpolicy

제한 없음

// DOS에서 출력

C : \ Projects \ Microsoft.Practices.ESB \ Source \ Samples \ Management Portal \ Install \ Scr

ipts> powershell. \ Management_Install.ps1 1

경고 : x86 PowerShell 실행 중 ...

이 시스템에서 스크립트 실행이 해제되어 있으므로 C : \ Projects \ Microsoft.Practices.ESB \ Source \ Samples \ Management Portal \ Install \ Scripts \ Management_Install.ps1 파일을로드 할 수 없습니다. 자세한 내용은 "get-help about_signing"을 참조하십시오.

줄에 : 1 자 : 25

  • . \ Management_Install.ps1 <<<< 1

    • CategoryInfo : NotSpecified : (:) [], PSSecurityException

    • FullyQualifiedErrorId : RuntimeException

C : \ Projects \ Microsoft.Practices.ESB \ Source \ Samples \ Management Portal \ Install \ Scripts> 일시 중지

계속하려면 아무 키나 누르십시오. . .

시스템은 Windows Server 2008 R2입니다.

내가 뭘 잘못하고 있죠?


PowerShell 2.0에서 실행 정책은 기본적으로 사용 안 함으로 설정되었습니다.

그때부터 PowerShell 팀은 많은 개선 작업을 수행했으며 사용자가 스크립트를 실행하는 동안 많은 일을 겪지 않을 것이라고 확신합니다. 따라서 PowerShell 4.0 이후부터는 기본적으로 활성화되어 있습니다.

귀하의 경우에는 PowerShell 콘솔에서 Set-ExecutionPolicy RemoteSigned 를 입력하고 예라고 말하십시오.


PowerShell 창을 관리자로여십시오 . 효과가있을 것입니다.


PowerShell을 실행할 때 -ExecutionPolicy ByPass 를 추가하여이 정책을 무시할 수 있습니다.

powershell -ExecutionPolicy ByPass -File script.ps1

Windows 7 :

시작 메뉴로 이동하여 "Windows PowerShell ISE"를 검색하십시오.

x86 버전을 마우스 오른쪽 버튼으로 클릭하고 "관리자 권한으로 실행"을 선택하십시오.

상단 부분에 붙여 넣기 Set-ExecutionPolicy RemoteSigned ; 스크립트를 실행하십시오. "예"를 선택하십시오.

Powershell ISE의 ​​64 비트 버전 (x86 버전이 아님)에도이 단계를 반복하십시오.

나는 단지 @Chad Miller가 암시 한 단계를 분명히하고있다. 차드에게 감사드립니다!


관리자가 아닌 환경에 있다면 실행 정책 만 설정할 수 있으며 관리자는 필요하지 않습니다.

Set-ExecutionPolicy -Scope "CurrentUser" -ExecutionPolicy "RemoteSigned"

또는

Set-ExecutionPolicy -Scope "CurrentUser" -ExecutionPolicy "Unrestricted"

도움말 항목에서 모든 내용을 읽을 수 있습니다.

Help Get-ExecutionPolicy -Full
Help Set-ExecutionPolicy -Full

다음 명령을 사용하여이를 우회 할 수도 있습니다.

PS > powershell Get-Content .\test.ps1 | Invoke-Expression

관리자 권한이없는 경우 PowerShell Set-ExecutionPolicy 를 우회하는 15 가지 방법을 설명하는 Scott Sutherland의이 기사를 읽을 수도 있습니다.

PowerShell 실행 정책을 무시하는 15 가지 방법


또한이 명령을 스크립트가 실행되기 전에 실행하면 문제가 해결됩니다.

set-executionpolicy unrestricted

몇 가지 답변은 실행 정책을 가리 킵니다. 그러나 어떤 것들은 "runas 관리자"도 필요합니다. 이것은 실행 정책에 영구적 인 변경이없고 관리자의 과거 제한을받을 수 있다는 점에서 가장 안전합니다. schedtask와 함께 사용하면 다음을 사용하여 배치를 시작할 수 있습니다.

    runas.exe /savecred /user:administrator powershell -ExecutionPolicy ByPass -File script.ps1

위의 Jack Edmonds와 post의 Peter Mortensen / Dhana 모두 로부터 명령을 실행하는 방법 명령 프롬프트에서 "관리자 권한으로 실행"으로 응용 프로그램을 실행하는 방법은 무엇입니까?


비슷한 문제가 있었고 Windows Server 2012 의 기본 cmd 가 x64를 실행하고 있다고 언급했습니다.

Windows 7 , Windows 8 , Windows Server 2008 R2 또는 Windows Server 2012의 경우 Administrator 로 다음 명령을 실행하십시오.

x86 (32 비트)
C:\Windows\SysWOW64\cmd.exe 엽니 다 C:\Windows\SysWOW64\cmd.exe
powershell Set-ExecutionPolicy RemoteSigned 명령을 실행하십시오. powershell Set-ExecutionPolicy RemoteSigned

x64 (64 비트)
C:\Windows\system32\cmd.exe 엽니 다 C:\Windows\system32\cmd.exe
powershell Set-ExecutionPolicy RemoteSigned 명령을 실행하십시오. powershell Set-ExecutionPolicy RemoteSigned

다음을 사용하여 모드를 확인할 수 있습니다.

  • CMD에서 : echo %PROCESSOR_ARCHITECTURE%
  • Powershell : [Environment]::Is64BitProcess

참고 문헌 :
MSDN - Windows PowerShell 실행 정책
Windows - 32 비트 대 64 비트 디렉토리 설명


아래 명령을 통해 현재 ExecutionPolicy 의 상태를 확인할 수 있습니다.

Get-ExecutionPolicy;

기본적으로 제한적 입니다. PowerShell 스크립트를 실행하려면이 ExecutionPolicy를 Bypass 또는 Unrestricted 로 설정해야합니다.

아래의 PowerShell 명령 중 하나를 사용하여 현재 사용자에 대한 정책을 Bypass 또는 Unrestricted 로 설정할 수 있습니다.

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Bypass -Force;

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted -Force;

제한되지 않은 정책은 모든 구성 파일을로드하고 모든 스크립트를 실행합니다. 인터넷에서 다운로드 한 서명되지 않은 스크립트를 실행하면 실행 전에 권한을 묻는 메시지가 나타납니다.

바이 패스 정책에서는 차단되는 것이 없으며 스크립트를 실행하는 동안 경고 또는 프롬프트가 표시되지 않습니다. Bypass ExecutionPolicyUnrestricted 보다 더 Unrestricted .


오늘도 똑같은 문제가있었습니다. 64 비트 실행 정책은 제한되지 않았고 32 비트는 제한되었습니다.

32 비트 정책을 원격으로 변경하는 방법은 다음과 같습니다.

Invoke-Command -ComputerName $servername -ConfigurationName Microsoft.PowerShell32 -scriptblock {Set-ExecutionPolicy unrestricted}

RubyChef 로 실행하고``시스템 실행을 사용하기 때문에 여기에왔다면 다음과 같이 실행하십시오 :

`powershell.exe -ExecutionPolicy Unrestricted -command [Environment]::GetFolderPath(\'mydocuments\')`

이 명령은 "MyDocuments"폴더를 가져 오는 것입니다.

-ExecutionPolicy Unrestricted 는 트릭을 수행합니다.

다른 사람에게 도움이되기를 바랍니다.


Windows Server 2008 R2를 사용하는 경우 PowerShell의 x64x86 버전에는 실행 정책을 설정해야합니다. 두 호스트 모두에서 실행 정책을 설정 했습니까?

관리자 는 PowerShell 창에 다음을 입력하여 실행 정책을 설정할 수 있습니다.

Set-ExecutionPolicy RemoteSigned

자세한 내용 은 Set-ExecutionPolicy Cmdlet 사용을 참조하십시오.


Windows 10을 사용 중이며 어떤 명령도 실행할 수 없습니다. 나에게 단서를 준 유일한 명령은 이것이었다 :

[x64]

  1. C : \ Windows \ SysWOW64 \ cmd.exe [관리자 권한으로 열기 ]
  2. 명령 실행> powershell Set-ExecutionPolicy 제한되지 않음

그러나 이것은 효과가 없었습니다. 그것은 제한적이었다. Windows10에 대한 새로운 보안 정책. 나는이 오류가 있었다 :

Set-ExecutionPolicy : Windows PowerShell은 실행 정책을 성공적으로 업데이트했지만보다 구체적인 범위에서 정의 된 정책에 의해 설정이 다시 정의됩니다. 재정의로 인해 쉘은 현재 유효한 실행 정책을 유지합니다 ...

그래서 다른 방법 ( 해결책 )을 찾았습니다.

  1. 열기 명령 / 콘솔 ( Win + R )
  2. gpedit.msc ( 그룹 정책 편집기)
  3. 로컬 컴퓨터 정책 -> 컴퓨터 구성 -> 관리 템플릿 -> Windows 구성 요소 -> Windows Powershell을 찾습니다 .
  4. " 스크립트 실행 켜기 "활성화
  5. 필요에 따라 정책을 설정하십시오. 내 스크립트를 " 모든 스크립트 허용 "으로 설정했습니다.

이제 PowerShell을 열고 즐기십시오.)







windows-server-2008-r2