Я хотел бы знать, доступно ли значение в записи TXT в DNS:
az network dns record-set txt show -g myresourcegroup -z 'mydomain' -n 'mytxtvalues'
Это часть результата json, в которой все:
"txtRecords": [
{
"value": [
"abc"
]
},
{
"value": [
"def"
]
}
]
Я перепробовал много запросов. Это 2, которые, как я ожидал, сработают.
az network dns record-set txt show -g myresourcegroup -z 'mydomain.com' -n 'mytxtvalues' --query txtRecords[?value[?starts_with(@, 'abc')]]
az network dns record-set txt show -g myresourcegroup -z 'mydomain.com' -n 'mytxtvalues' --query txtRecords[*].value[?starts_with(@, 'abc')]]
Результат:
В строке: 1 символ: 123 + ... 'mytxtvalues' --query txtRecords [? value [? Start_with (@, 'abc') ... + ~ Нераспознанный токен в исходном тексте. В строке: 1 символ: 124 + ... 'mytxtvalues' --query txtRecords [? Value [? Start_with (@, 'abc')] ... + ~ Отсутствует аргумент в списке параметров.
Похоже, что @, используемый для фильтрации массива, не распознается. Но я не знаю, как запросить иначе.
Каким будет правильный запрос, чтобы узнать, есть ли значение abc уже в списке?