Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
De nombreux paramètres Azure CLI acceptent des valeurs JSON, mais parce qu’il peut être difficile d’aplatir JSON en chaîne, Azure CLI prend en charge la syntaxe abrégée. La syntaxe abrégée est une représentation simplifiée d’une chaîne JSON.
Cet article fournit des exemples de syntaxe abrégée et montre comment passer JSON en tant que fichier.
Remarque
Vous savez qu’un paramètre accepte la syntaxe abrégée lorsque la description du paramètre lit comme Support shorthand-syntax, JSON-file and YAML-file. Try "??" to show more
.
Syntaxe de notation abrégée pour la valeur complète
La syntaxe abrégée dans le format Full Value
est JSON entouré de guillemets doubles. Les guillemets doubles entraînent le passage de la valeur JSON en tant que chaîne dans le langage de script PowerShell et Bash. Voici un exemple 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"
}
}
}
Lorsque vous passez JSON dans une valeur de paramètre, le JSON est aplatit et encapsulé entre guillemets doubles.
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'}}}"
Syntaxe abrégée de valeur partielle
La syntaxe abrégée pour la valeur partielle est composée de deux parties jointes par un signe égal (=
) entre l’index key
et le value
.
Voici un exemple : key=value
.
La valeur peut être une chaîne simplifiée, un format de valeur complète, JSON ou un chemin d’accès au fichier JSON. À l’aide de l’exemple JSON fourni, transmettez des propriétés pour le --contact
paramètre suivant les exemples suivants :
Utiliser Partial Value
pour une paire clé-valeur unique.
az some-command --contact name=Bill
Utiliser Partial Value
pour deux paires clé-valeur. Notez l’espace qui sépare les deux paires.
az some-command --contact age=20 paid=true
Utiliser Partial Value
pour le deuxième élément.
az some-command --contact emails[1]="Bill@outlook.com"
Utilisez Partial Value
pour la propriété détails de adresse.
az some-command --contact address.details="{line1:'15590 NE 31st St',line2:'Redmond, WA'}"
Combiner la syntaxe abrégée des valeurs complètes et partielles
Vous pouvez combiner une syntaxe de valeur complète et partielle, mais commencez toujours par Full Value
, suivi de Partial Value
. Si vous inversez l’ordre, les données finales ne contiennent que Full Value
, sans propriétés définies dans Partial Value
.
Utilisez Full Value
suivi de 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."
Vous pouvez également corriger un nouvel élément de propriété de liste dans Full Value
. Par exemple, vous pouvez définir la deuxième adresse e-mail par 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."
Passer JSON dans un fichier
Il est également possible de passer un fichier JSON en tant que valeur de paramètre. Il s’agit de l’approche recommandée lors de l’utilisation de JSON complexe.
az some-command --contact address.details=./address_details.JSON
Chaîne de guillemets simples
Chaîne à guillemets simples est utilisée pour passer une valeur de chaîne avec des caractères spéciaux : :
, ,
, {
, }
, [
, ]
, null
, ??
et espace.
Ces caractères ont souvent d’autres significations lors de l’analyse de la syntaxe abrégée. Les guillemets simples indiquent à l’analyseur de traiter tout comme une chaîne.
Passer une valeur de chaîne avec un espace et d’autres caractères spéciaux
Voici un exemple JSON à passer en tant que valeur dans le --contact
paramètre :
{
"name": "Bill RP",
"age": 20,
"paid": true,
"data": "{a: [1, 2]}"
}
Utilisez des guillemets simples au Full Value
format :
az some-command --contact "{name:'Bill RP',age:20,paid:true,data:'{a: [1, 2]}'}"
Utilisez des guillemets simples au Partial Value
format :
az some-command --contact name="'Bill RP'" data="'{a: [1, 2]}'"
Dans l’exemple suivant, il est également possible de supprimer des guillemets simples pour la name
clé. L’analyseur ne fait pas la distinction entre une Full Value
expression, une null
valeur ou un ??
indicateur.
Utilisez Partial Value
format :
az some-command --contact name="Bill RP"
Utiliser des apostrophes
Le caractère apostrophe ('
) a besoin d’échappement spécial (/'
) dans une chaîne de guillemets simples afin de distinguer la fin d’une chaîne de guillemets simples. Une barre oblique (/
) est un caractère d’échappement uniquement après une apostrophe ('
) dans une chaîne de guillemets simples. Si /
n'est pas dans une chaîne avec des apostrophes ou si /
n'est pas après '
, alors /
est un caractère normal.
Full Value
Format de passe :
az some-command --contact "{name:'bill'/s',age:20,paid:true}"
Partial Value
Format de passe :
az some-command --contact name="'bill'/s'"
Si value
n'est pas dans une chaîne de guillemets simples, vous n’avez pas besoin d’ajouter un caractère d’échappement après '
.
Partial Value
Format de passe :
az some-command --contact name="bill's"
Voici un autre exemple utilisant le code JSON suivant :
{
"name": "Bill",
"motto": "One man's bug is another man's lesson.",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
]
}
Au format Full Value
, utilisez une chaîne de guillemets simples et remplacez '
par '/
.
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]}"
Au Partial Value
format, une valeur contenant une apostrophe peut être analysée sous forme de chaîne, entourée de guillemets doubles.
az some-command --contact motto="One man's bug is another man's lesson."
Travailler avec des valeurs NULL
Passez le mot « null » en tant que valeur de chaîne
Parfois, vous devez passer une valeur de chaîne « null ». Pour faire la distinction avec null
la valeur, il doit s’agir d’une chaîne de guillemets uniques.
Par exemple, si vous souhaitez passer la chaîne « null » à la propriété name dans le --contact
paramètre :
JSON :
{
"name": "null",
"age": 20,
"paid": true
}
Utilisez Full Value
format :
az some-command --contact "{name:'null',age:20,paid:true}"
Utilisez Partial Value
format :
az some-command --contact name="'null'"
Passer une null
valeur
La syntaxe abrégée prend en charge le mot clé null
dans les formats Full Value
et Partial Value
.
Par exemple, si vous souhaitez passer l’objet suivant avec une null
propriété d’adresse de valeur dans le --contact
paramètre :
{
"name": "Bill",
"age": 20,
"paid": true,
"emails": [
"Bill@microsoft.com",
"Bill@outlook.com"
],
"address": null
}
Utilisez Full Value
format :
az some-command --contact "{name:Bill,age:20,paid:true,emails:[Bill@microsoft.com,Bill@outlook.com],address:null}"
Utilisez Partial Value
format :
az some-command --contact name=Bill address=null
Utiliser une null
valeur dans les commandes de mise à jour
Dans les commandes de mise à jour, une null
valeur est souvent utilisée pour annuler les propriétés d’un objet ou supprimer des éléments d’un tableau ou d’un dictionnaire.
{
"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": {}
}
S’il existe déjà une ressource avec les valeurs JSON indiquées ci-dessus, le passage d’une null
valeur dans une commande de mise à jour réinitialise la valeur de la clé.
az some-update-command --contact address=null
Voici un autre exemple qui supprime le premier élément de l’e-mail d’une ressource :
az some-update-command --emails [0]=null
Utiliser ??
pour afficher l’aide
L’utilisation de points ??
d’interrogation doubles est un mot clé spécial pour afficher l’aide disponible pour un paramètre ou une sous-propriété. Il peut également être utilisé dans la syntaxe abrégée pour obtenir de l’aide.
Remarque
L’interpréteur de commandes Bash utilise ?
comme caractère générique. Vérifiez que les points ??
d’interrogation doubles sont encapsulés entre guillemets doubles.
Utiliser ??
pour afficher le message d’aide d’un paramètre
Afficher le message d’aide du --contact
paramètre :
az some-command --contact "??"
Utiliser ??
au Full Value
format
Afficher le message d'aide du paramètre --contant
lorsque vous rédigez Full Value
:
az some-command --contact "{??"
az some-command --contact "{name:Bill,??"
Afficher le message d’aide de la propriété --contant.address
lors de l’écriture Full Value
:
az some-command --contact "{name:Bill,address:??"
Afficher le message d’aide de la propriété --contant.address.country
lors de l'écriture de la valeur Full Value
.
az some-command --contact "{name:Bill,address:{country:??"
Afficher le message d’aide de la propriété --contant.emails
lors de l’écriture de Full Value
.
az some-command --contact "{name:Bill,address:{country:USA},emails:??"
Afficher le message d’aide de l’élément de propriété --contant.emails
lors de l’écriture de Full Value
.
az some-command --contact "{name:Bill,address:{country:USA},emails:[??"
Utiliser ??
au Partial Value
format
Afficher le message d'aide de la propriété --contant.address
lors de l'écriture Partial Value
:
az some-command --contact address="??"
Afficher le message d’aide de la propriété --contant.emails
lorsqu'on écrit Partial Value
.
az some-command --contact emails="??"
Afficher le message d'aide de l'élément de la propriété --contant.emails
lors de l'écriture de Partial Value
.
az some-command --contact emails[0]="??"