Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Muitos parâmetros da CLI do Azure aceitam valores JSON, mas porque pode ser difícil achatar JSON em uma cadeia de caracteres, a CLI do Azure dá suporte à sintaxe abreviada. A sintaxe abreviada é uma representação simplificada de uma cadeia de caracteres JSON.
Este artigo fornece exemplos de sintaxe abreviada e mostra como passar JSON como um arquivo.
Observação
Você saberá que um parâmetro aceita a sintaxe abreviada quando a descrição do parâmetro for semelhante a Support shorthand-syntax, JSON-file and YAML-file. Try "??" to show more.
Sintaxe abreviada de valor completo
A sintaxe abreviada no Full Value formato é JSON cercada por aspas duplas. Aspas duplas fazem com que o valor JSON seja passado como uma cadeia de caracteres na linguagem de script do PowerShell e do Bash. Aqui está um exemplo JSON:
{
"name": "Bill",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
],
"address": {
"country": "USA",
"company": "Microsoft",
"details": {
"line1": "15590 NE 31st St",
"line2": "Redmond, WA"
}
}
}
Quando você passa JSON em um valor de parâmetro, o JSON é achatado e envolto em aspas duplas.
az some-command --contact "{name:Bill,age:20,paid:true,emails:[Bill@microsoft.com,Bill@outlook.com],address:{country:USA,company:Microsoft,details:{line1:'15590 NE 31st St',line2:'Redmond, WA'}}}"
Sintaxe abreviada de valor parcial
A sintaxe abreviada para valor parcial é composta por duas partes unidas por um sinal igual (=) entre o índice key e o value. Eis um exemplo: key=value.
O valor pode ser uma cadeia de caracteres simplificada, formato de valor completo, JSON ou um caminho de arquivo JSON. Usando o exemplo JSON fornecido, passe as propriedades para o --contact parâmetro seguindo estes exemplos:
Utilize Partial Value para um único par chave-valor.
az some-command --contact name=Bill
Utilize Partial Value para dois pares de chave-valor. Observe o espaço que separa os dois pares.
az some-command --contact age=20 paid=true
Use Partial Value para o segundo elemento.
az some-command --contact emails[1]="Bill@outlook.com"
Use Partial Value para obter detalhes da propriedade do endereço.
az some-command --contact address.details="{line1:'15590 NE 31st St',line2:'Redmond, WA'}"
Combinar sintaxe abreviada de valor total e parcial
Você pode combinar sintaxe de valor total e parcial, mas sempre começar com Full Value seguido por Partial Value. Se você reverter a ordem, os dados finais conterão apenas o Full Value sem propriedades definidas em Partial Value.
Use Full Value seguido por Partial Value:
az some-command --contact "{name:Bill,age:20,paid:true,emails:[Bill@microsoft.com,Bill@outlook.com]}" motto="One man's bug is another man's lesson."
Você também pode corrigir um novo elemento de propriedade de lista em Full Value. Por exemplo, você pode definir o segundo endereço de email:Partial Value
az some-command --contact "{name:Bill,age:20,paid:true,emails:[Bill@microsoft.com]}" emails[1]="Bill@outlook.com" motto="One man's bug is another man's lesson."
Passar JSON em um arquivo
Também é possível passar um arquivo JSON como um valor de parâmetro. Essa é a abordagem recomendada ao trabalhar com JSON complexo.
az some-command --contact address.details=./address_details.JSON
Cadeia de caracteres de aspas simples
Cadeia de caracteres de aspas simples é usada para passar um valor de cadeia de caracteres com caracteres especiais: :, ,, {, }, [, ], null, ?? e espaço. Esses caracteres geralmente têm outros significados ao analisar a sintaxe abreviada. Aspas simples dizem ao analisador para tratar tudo como uma cadeia de caracteres.
Passe um valor de string que contenha um espaço e outros caracteres especiais
Veja um exemplo de JSON para passar como um valor no --contact parâmetro:
{
"name": "Bill RP",
"age": 20,
"paid": true,
"data": "{a: [1, 2]}"
}
Use aspas simples no Full Value formato:
az some-command --contact "{name:'Bill RP',age:20,paid:true,data:'{a: [1, 2]}'}"
Use aspas simples no Partial Value formato:
az some-command --contact name="'Bill RP'" data="'{a: [1, 2]}'"
No próximo exemplo, também é possível remover as aspas simples da chave name. O analisador não distingue entre uma Full Value expressão, um null valor ou o ?? sinalizador.
Use o formato Partial Value:
az some-command --contact name="Bill RP"
Trabalhar com apóstrofos
O caractere apóstrofo (') precisa de escape especial (/') na cadeia de caracteres de aspas simples para distinguir o final de uma cadeia de caracteres de aspas simples. Uma barra (/) é um caractere de escape somente após um apóstrofo (') na cadeia de caracteres de aspas simples. Se / não estiver na string entre aspas simples ou / não estiver depois de ', / é um caractere normal.
Passar formato Full Value
az some-command --contact "{name:'bill'/s',age:20,paid:true}"
Passar formato Partial Value
az some-command --contact name="'bill'/s'"
Se value não estiver na cadeia de caracteres de aspas simples, você não precisará adicionar um caractere de escape após '.
Passar formato Partial Value
az some-command --contact name="bill's"
Este é outro exemplo usando o seguinte JSON:
{
"name": "Bill",
"motto": "One man's bug is another man's lesson.",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
]
}
No Full Value formato, use uma cadeia de caracteres de aspas simples e substitua o ' por '/.
az some-command --contact "{name:Bill,motto:'One man'/s bug is another man'/s lesson.',age:20,paid:true,emails:[Bill@microsoft.com,Bill@outlook.com]}"
No Partial Value formato, um valor que contém um apóstrofo pode ser analisado como cadeia de caracteres, cercado por aspas duplas.
az some-command --contact motto="One man's bug is another man's lesson."
Trabalhar com valores NULL
Passar a palavra "nulo" como um valor de cadeia de caracteres
Em algum momento, você precisa passar um valor de string "nulo". Para distinguir o valor null, precisa ser uma cadeia de caracteres de aspas simples. Por exemplo, se você quiser passar a cadeia de caracteres "null" para a propriedade name no --contact parâmetro:
JSON:
{
"name": "null",
"age": 20,
"paid": true
}
Use o formato Full Value:
az some-command --contact "{name:'null',age:20,paid:true}"
Use o formato Partial Value:
az some-command --contact name="'null'"
Passe um null valor
O suporte à sintaxe abreviada para a palavra-chave null está disponível em ambos formatos Full Value e Partial Value.
Por exemplo, se você quiser passar o seguinte objeto com um valor da propriedade null no parâmetro :
{
"name": "Bill",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
],
"address": null
}
Use o formato Full Value:
az some-command --contact "{name:Bill,age:20,paid:true,emails:[Bill@microsoft.com,Bill@outlook.com],address:null}"
Use o formato Partial Value:
az some-command --contact name=Bill address=null
Use um null valor em comandos de atualização
Em comandos de atualização, um null valor geralmente é usado para desafixar propriedades de um objeto ou remover elementos de uma matriz ou de um dicionário.
{
"contact": {
"name": "Bill",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
],
"address": {
"country": "USA",
"company": "Microsoft",
"details": {
"line1": "15590 NE 31st St",
"line2": "Redmond, WA"
}
}
},
"other_properties": {}
}
Se já existir um recurso com os valores JSON mostrados acima, passar um null valor em um comando de atualização redefinirá o valor da chave.
az some-update-command --contact address=null
Este é outro exemplo que remove o primeiro elemento do email de um recurso:
az some-update-command --emails [0]=null
Usar ?? para mostrar ajuda
O uso de pontos de interrogação ?? duplos é uma palavra-chave especial para mostrar a ajuda disponível para um parâmetro ou subpropriedade. Ele também pode ser usado na sintaxe abreviada para obter ajuda.
Observação
O shell Bash usa ? como "curinga". Verifique se os pontos de interrogação ?? duplos estão encapsulados nas aspas duplas.
Usar ?? para mostrar a mensagem de ajuda de um parâmetro
Mostrar mensagem de ajuda do --contact parâmetro:
az some-command --contact "??"
Use o formato ?? em Full Value.
Mostrar mensagem de ajuda do --contant parâmetro ao escrever Full Value:
az some-command --contact "{??"
az some-command --contact "{name:Bill,??"
Mostrar mensagem de ajuda da --contant.address propriedade ao escrever Full Value:
az some-command --contact "{name:Bill,address:??"
Mostrar mensagem de ajuda da --contant.address.country propriedade ao escrever Full Value:
az some-command --contact "{name:Bill,address:{country:??"
Mostrar mensagem de ajuda da --contant.emails propriedade ao escrever Full Value:
az some-command --contact "{name:Bill,address:{country:USA},emails:??"
Mostrar mensagem de ajuda da propriedade do elemento --contant.emails ao escrever Full Value:
az some-command --contact "{name:Bill,address:{country:USA},emails:[??"
Use o formato ?? em Partial Value.
Mostrar mensagem de ajuda da --contant.address propriedade ao escrever Partial Value:
az some-command --contact address="??"
Mostrar mensagem de ajuda da --contant.emails propriedade ao escrever Partial Value:
az some-command --contact emails="??"
Mostrar mensagem de ajuda da propriedade do elemento --contant.emails ao escrever Partial Value:
az some-command --contact emails[0]="??"