Azure Powershell 실행 문제

Azure Powershell 실행 문제

다음 지침에 따라 Azure Powershell을 설치하려고 합니다.이 페이지.

설치가 잘 실행되고 오류 없이 진행되는 것 같습니다.

하지만 일단 완료되면 응용 프로그램을 찾을 수 없습니다 Azure Powershell. 각종 단말기를 처분합니다

  • Windows Azure 명령 프롬프트
  • Windows Azure 저장소 명령줄

그러나 이들 중 어느 것도 작동하지 않는 것 같습니다. 작업이란 예제의 첫 번째 명령을 성공적으로 실행한다는 의미입니다.

Add-AzureAccount

그렇게 하면 다음과 같은 오류가 발생합니다.

'Add-Azure Account' is not recognized as an internal control 
or external, operable program or batch file.

게다가 "설치된 모든 소프트웨어" 목록에는 Azure Powershell에 대한 언급이 없습니다.

여기에 이미지 설명을 입력하세요

다음 명령을 성공적으로 실행할 수 있습니다.

Import-Module MSOnline
Get-Module MSOnline 
    gives me -> Manifest   MSOnline                  {Add-MsolRoleMember, Remove-MsolForeignGroupFromRole, Get-MsolFederation...

그러나 다음 명령은 모두 동일한 오류( ModuleNotFound)를 제공합니다.

Import-Module Azure
Import-Module AzureResourceManager
Import-Module AzureProfile

내 모듈 목록에 표시되지 않기 때문에 이는 매우 논리적입니다.

PS C:\Users\matthews> Get-Module -ListAvailable

ModuleType Name                      ExportedCommands
---------- ----                      ----------------
Manifest   AppLocker                 {}
Manifest   BitsTransfer              {}
Manifest   MSOnline                  {}
Manifest   MSOnlineExtended          {}
Manifest   PSDiagnostics             {}
Manifest   PSReadline                {}
Manifest   TroubleshootingPack       {}

결론적으로, 제공된 솔루션은여기PowerShell폴더 에 디렉터리 가 없기 때문에 작동하지 않습니다 Windows Azure.

제가 뭔가 잘못 이해하고 있는 건가요, 아니면 설치로 인한 문제인가요?

주의: 독립 실행형 설치 프로그램을 사용하여 설치하려고 했지만 이 경우 명시적인 오류 메시지가 나타납니다.

This setup requires the Windows PowerShell 3.0 or compatible version to be installed.

여러 가지 이유로 새 Powershell 버전을 설치하는 데 문제가 있지만 이것이 해결책일 수도 있습니다.

답변1

명령

Import-Module "C:\Program Files (x86)\Microsoft SDKs\..."

작동할 수 있지만 시간이 지남에 따라 경로가 변경되었습니다.

재부팅만 하면 $env:PSModulePath가 업데이트됩니다.

그러나 재부팅할 필요 없이 빠른 수정을 수행할 경우 이 스크립트를 실행하면 문제가 해결됩니다.

if( (Get-Module -ListAvailable azure | measure).Count -eq 0 )
{
    # == Refresh the Environment variable if just intall the tools without rebooting and try again
    $env:PSModulePath = [System.Environment]::GetEnvironmentVariable("PSModulePath","Machine")

    if( (Get-Module -ListAvailable azure | measure).Count -eq 0 )
    {
        echo("You must install the Azure PowerShell Tools. Go at: http://go.microsoft.com/?linkid=9811175&clcid=0x409")
        Read-Host "Press enter key to close"
        exit
    }
}

echo("Azure PowerShell is installed")

이게 도움이 되길 바란다.

관련 정보