programing

Azure 리소스 그룹이 있는지 확인 - Azure Powershell

topblog 2023. 8. 16. 21:53
반응형

Azure 리소스 그룹이 있는지 확인 - Azure Powershell

Resource Group의 존재 여부를 확인하려고 하는데 다음 코드가 true 또는 false를 반환해야 한다고 생각했는데 아무것도 출력되지 않습니다.

$RSGtest = Find-AzureRmResource | Format-List ResourceGroupName | get-unique
$RSGtest -Match "$myResourceGroupName"

출력이 안 나오는 이유는 무엇입니까?

업데이트:

지금 새 크로스 파일명 AZ 파워셸 모듈에서 Get-AzResourceGroup cmdlet을 사용해야 합니다. :

Get-AzResourceGroup -Name $myResourceGroupName -ErrorVariable notPresent -ErrorAction SilentlyContinue

if ($notPresent)
{
    # ResourceGroup doesn't exist
}
else
{
    # ResourceGroup exist
}

원본 답변:

Get-AzureRmResourceGroup cmdlet이 있습니다.

Get-AzureRmResourceGroup -Name $myResourceGroupName -ErrorVariable notPresent -ErrorAction SilentlyContinue

if ($notPresent)
{
    # ResourceGroup doesn't exist
}
else
{
    # ResourceGroup exist
}

이것을 먹어보세요.

$ResourceGroupName = Read-Host "Resource group name"
Find-AzureRmResourceGroup | where {$_.name -EQ $ResourceGroupName}

저는 PS 초보자이고 이 질문에 대한 해결책을 찾고 있었습니다.

저는 SO에서 직접 검색하는 대신 PS 도움말(PS에서 더 많은 경험을 얻기 위해)을 사용하여 자체적으로 조사하려고 노력했고 작업 해결책을 생각해냈습니다.그리고 전문가들의 답변과 비교해서 SO를 검색했습니다.저는 제 솔루션이 덜 우아하지만 더 컴팩트하다고 생각합니다.다른 사람들이 의견을 말할 수 있도록 여기에 보고합니다.

if (!(Get-AzResourceGroup $rgname -ErrorAction SilentlyContinue))
   { "not found"}
else
   {"found"}

내 논리에 대한 설명:Get-AzResourceGroup 출력을 분석해보니 발견된 리소스 그룹 요소가 있는 배열이거나 그룹이 없으면 null입니다.조금 더 길지만 다른 조건을 건너뛸 수 있는 not (!) 양식을 선택했습니다.대부분의 경우 리소스 그룹이 존재하지 않는 경우 리소스 그룹을 생성하고 리소스 그룹이 이미 존재하는 경우에는 아무것도 수행하지 않으면 안 됩니다.

저도 같은 것을 찾고 있었는데 제 시나리오에 추가 조건이 있었습니다.

그래서 저는 이렇게 생각했습니다.시나리오 세부 정보를 보려면 다음과 같이 하십시오.

$rg="myrg"
$Subscriptions = Get-AzSubscription
$Rglist=@()
foreach ($Subscription in $Subscriptions){
$Rglist +=(Get-AzResourceGroup).ResourceGroupName
}
$rgfinal=$rg
$i=1
while($rgfinal -in $Rglist){
$rgfinal=$rg +"0" + $i++
}
Write-Output $rgfinal
Set-AzContext -Subscription "Subscription Name"
$createrg= New-AzResourceGroup -Name $rgfinal -Location "location"

비슷한 문제가 있었지만 아래 스크립트를 사용하여 해결했습니다.

$blobs = Get-AzureStorageBlob -Container "dummycontainer" -Context $blobContext -ErrorAction SilentlyContinue

## Loop through all the blobs
foreach ($blob in $blobs) {
    write-host -Foregroundcolor Yellow $blob.Name
    if ($blob.Name -ne "dummyblobname" ) {
        Write-Host "Blob Not Found"
    }
    else {
        Write-Host "bLOB already exist"
    }
}

언급URL : https://stackoverflow.com/questions/37598086/check-if-azure-resource-group-exist-azure-powershell

반응형