Эффективные способы назначения списка групп ресурсов переменной с помощью Azure CLI

Введение.
Azure CLI — это мощный инструмент командной строки, который позволяет управлять ресурсами Azure и взаимодействовать с ними. Одной из распространенных задач является присвоение списка групп ресурсов переменной для дальнейшей обработки или автоматизации. В этой статье мы рассмотрим различные методы достижения этой цели с помощью Azure CLI, а также примеры кода.

Метод 1: использование подстановки команд Bash
Пример кода:

resource_groups=$(az group list --query '[].name' --output tsv)

Объяснение:
Этот метод использует подстановку команд Bash для сохранения результата команды az group listв переменной resource_groups. Параметр --query '[].name'фильтрует выходные данные, чтобы получить только имена групп ресурсов, а --output tsvформатирует выходные данные как разделенные табуляцией. ценности.

Метод 2. Использование запроса JMESPath Azure CLI
Пример кода:

resource_groups=$(az group list --query "[].name" --output json | jq -r '.[]')

Объяснение:
Этот метод использует язык запросов JMESPath для извлечения имен групп ресурсов. Команда az group listполучает информацию о группе ресурсов в формате JSON. Затем инструмент командной строки jqиспользуется для перебора массива JSON и извлечения имен.

Метод 3. Использование Azure CLI с PowerShell
Пример кода:

$resource_groups = az group list --query "[].name" --output json | ConvertFrom-Json | Foreach-Object { $_.name }

Объяснение:
Если вы предпочитаете использовать PowerShell вместо Bash, вы можете добиться того же результата. Этот метод использует командлет ConvertFrom-Jsonдля преобразования выходных данных JSON az group listв объекты PowerShell. Затем командлет Foreach-Objectиспользуется для извлечения имен групп ресурсов.

Метод 4. Использование Azure CLI с Python
Пример кода:

import subprocess
import json
command = "az group list --query '[].name' --output json"
output = subprocess.check_output(command, shell=True).decode("utf-8")
resource_groups = json.loads(output)
# Access the resource group names
for group in resource_groups:
    print(group)

Объяснение.
Этот метод демонстрирует, как вызвать Azure CLI из сценария Python и получить список групп ресурсов. Модуль subprocessиспользуется для выполнения команды CLI, а выходные данные захватываются и анализируются с помощью модуля json.

Заключение.
В этой статье мы рассмотрели различные методы назначения списка групп ресурсов переменной с помощью Azure CLI. Независимо от того, предпочитаете ли вы Bash, PowerShell или Python, существует множество подходов для достижения одного и того же результата. Используя эти методы, вы можете эффективно управлять задачами управления ресурсами Azure и автоматизировать их.