linux - Comment prendre la sortie du fichier JSON par Bash comme entrée
怪我咯
怪我咯 2017-06-19 09:07:30
0
2
912

Novice en scripting, nouveau sur bash et zsh, j'ai maintenant besoin d'écrire un script pour gérer de nombreux comptes de test sous Linux.

Utilisez la commandeaws get-role....后,cmd中输出显示的是一个json文本,之后打算使用jq pour analyser l'une des valeurs en fonction de la clé. Cependant, en raison du grand nombre de comptes en cours de traitement, le texte json correspondant à ces comptes ne peut pas être stocké sous forme de fichier pour le traitement. ?

La logique approximative est la suivante :
Le but ultime est d'obtenir la valeur du nom
name=$(cat (aws get-role....) | jq .Role.Name)但是我这么写的话系统会提示我zsh: number expected

Y a-t-il un problème avec mes supports ? Demandez à Dieu des réponses.
Si le problème des parenthèses est résolu, cette façon d'écrire est-elle trop longue et pas belle ? Je demande également quelques conseils au maître, je suis très reconnaissant.

怪我咯
怪我咯

走同样的路,发现不同的人生

répondre à tous(2)
迷茫

Essayez-le :

name=$(aws get-role....| jq .Role.Name)
伊谢尔伦

cat命令后面跟的是文件名,操作是输出文件内容。然而aws get-role....输出到STDOUT的并非文件名而是一整个JSON字符串,所以觉得直接用name=$(aws get-role.... | jq .Role.Name)C'est tout.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal