Une boucle dans un tableau avec jq JSON (sur la ligne de commande)
J'ai un tableau:
[
{
"AssetId": 14462955,
"Name": "Cultural Item",
"Description": "It\u0027s... you know... an item. People love items!!!",
"AbsoluteUrl": "http://www.roblox.com/Cultural-Item-item?id=14462955",
"PriceInRobux": "300",
"PriceInTickets": "",
"Updated": "3 years ago",
"Favorited": "370 times",
"Sales": "55",
"Remaining": "",
"Creator": "ROBLOX",
"CreatorAbsoluteUrl": "http://www.roblox.com/users/1/profile",
"PrivateSales": "3 Private Sellers",
"PriceView": 1,
"BestPrice": "666,666,666",
"ContentRatingTypeID": 0,
"IsServerSideThumbnailLookupInCatalogEnabled": true,
"IsLargeItem": false,
"IsThumbnailFinal": true,
"IsThumbnailUnapproved": false,
"ThumbnailUrl": "http://t3.rbxcdn.com/cfbab57cabc6090d078c5f7af403caaa",
"BcOverlayUrl": null,
"LimitedOverlayUrl": "http://images.rbxcdn.com/793dc1fd7562307165231ca2b960b19a.png",
"DeadlineOverlayUrl": null,
"LimitedAltText": "Limited",
"NewOverlayUrl": null,
"SaleOverlayUrl": null,
"IosOverlayUrl": null,
"XboxOverlayUrl": null,
"IsTransparentBackground": false,
"AssetTypeID": 8,
"CreatorID": 1,
"CreatedDate": "\/Date(1250206710313)\/",
"UpdatedDate": "\/Date(1340756728887)\/",
"IsForSale": true,
"IsPublicDomain": false,
"IsLimited": true,
"IsLimitedUnique": false,
"MinimumMembershipLevel": 0
},
{
"AssetId": 114385498,
"Name": "Redspybot",
"Description": "How could something so conspicuous be a spy? Beats me! This item was awarded to users who redeemed a ROBLOX card from F.Y.E. in May 2013.",
"AbsoluteUrl": "http://www.roblox.com/Redspybot-item?id=114385498",
"PriceInRobux": "",
"PriceInTickets": "",
"Updated": "2 years ago",
"Favorited": "218 times",
"Sales": "0",
"Remaining": "",
"Creator": "ROBLOX",
"CreatorAbsoluteUrl": "http://www.roblox.com/users/1/profile",
"PrivateSales": "2 Private Sellers",
"PriceView": 1,
"BestPrice": "862,133,799",
"ContentRatingTypeID": 0,
"IsServerSideThumbnailLookupInCatalogEnabled": true,
"IsLargeItem": false,
"IsThumbnailFinal": true,
"IsThumbnailUnapproved": false,
"ThumbnailUrl": "http://t3.rbxcdn.com/173f5636efac35199e40740b3839b3d3",
"BcOverlayUrl": null,
"LimitedOverlayUrl": "http://images.rbxcdn.com/793dc1fd7562307165231ca2b960b19a.png",
"DeadlineOverlayUrl": null,
"LimitedAltText": "Limited",
"NewOverlayUrl": null,
"SaleOverlayUrl": null,
"IosOverlayUrl": null,
"XboxOverlayUrl": null,
"IsTransparentBackground": false,
"AssetTypeID": 8,
"CreatorID": 1,
"CreatedDate": "\/Date(1367270100170)\/",
"UpdatedDate": "\/Date(1370113730937)\/",
"IsForSale": false,
"IsPublicDomain": false,
"IsLimited": true,
"IsLimitedUnique": false,
"MinimumMembershipLevel": 0
},
{
"AssetId": 29715011,
"Name": "American Cowboy",
"Description": "...or Cowgirl! You know how to rope in some lookieloos to your America place. Yee haw! Rating prize for the July 4, 2010 Building Contest.",
"AbsoluteUrl": "http://www.roblox.com/American-Cowboy-item?id=29715011",
"PriceInRobux": "",
"PriceInTickets": "",
"Updated": "3 years ago",
"Favorited": "507 times",
"Sales": "0",
"Remaining": "",
"Creator": "ROBLOX",
"CreatorAbsoluteUrl": "http://www.roblox.com/users/1/profile",
"PrivateSales": "3 Private Sellers",
"PriceView": 1,
"BestPrice": "950,000,000",
"ContentRatingTypeID": 0,
"IsServerSideThumbnailLookupInCatalogEnabled": true,
"IsLargeItem": false,
"IsThumbnailFinal": true,
"IsThumbnailUnapproved": false,
"ThumbnailUrl": "http://t2.rbxcdn.com/972ae5b4376523dcfdfdcd16c1cef90d",
"BcOverlayUrl": null,
"LimitedOverlayUrl": "http://images.rbxcdn.com/793dc1fd7562307165231ca2b960b19a.png",
"DeadlineOverlayUrl": null,
"LimitedAltText": "Limited",
"NewOverlayUrl": null,
"SaleOverlayUrl": null,
"IosOverlayUrl": null,
"XboxOverlayUrl": null,
"IsTransparentBackground": false,
"AssetTypeID": 8,
"CreatorID": 1,
"CreatedDate": "\/Date(1277767354190)\/",
"UpdatedDate": "\/Date(1277769099607)\/",
"IsForSale": false,
"IsPublicDomain": false,
"IsLimited": true,
"IsLimitedUnique": false,
"MinimumMembershipLevel": 0
},
{
"AssetId": 98253651,
"Name": "Mahem\u0026#39;s ROBLOX Tablet",
"Description": "Winner: Mahem. ROBLOX will be in touch to redeem this prize. Void if sold, traded, or deleted.",
"AbsoluteUrl": "http://www.roblox.com/Mahems-ROBLOX-Tablet-item?id=98253651",
"PriceInRobux": "90,000",
"PriceInTickets": "",
"Updated": "3 years ago",
"Favorited": "429 times",
"Sales": "1",
"Remaining": "0",
"Creator": "ROBLOX",
"CreatorAbsoluteUrl": "http://www.roblox.com/users/1/profile",
"PrivateSales": "1 Private Sellers",
"PriceView": 1,
"BestPrice": "999,999,999",
"ContentRatingTypeID": 0,
"IsServerSideThumbnailLookupInCatalogEnabled": true,
"IsLargeItem": false,
"IsThumbnailFinal": true,
"IsThumbnailUnapproved": false,
"ThumbnailUrl": "http://t7.rbxcdn.com/1dc64223edd569ea698191c86c124928",
"BcOverlayUrl": "http://images.rbxcdn.com/4fc3a98692c7ea4d17207f1630885f68.png",
"LimitedOverlayUrl": "http://images.rbxcdn.com/d649b9c54a08dcfa76131d123e7d8acc.png",
"DeadlineOverlayUrl": null,
"LimitedAltText": "Limited Unique",
"NewOverlayUrl": null,
"SaleOverlayUrl": null,
"IosOverlayUrl": null,
"XboxOverlayUrl": null,
"IsTransparentBackground": false,
"AssetTypeID": 19,
"CreatorID": 1,
"CreatedDate": "\/Date(1353368761747)\/",
"UpdatedDate": "\/Date(1355363144050)\/",
"IsForSale": true,
"IsPublicDomain": false,
"IsLimited": false,
"IsLimitedUnique": true,
"MinimumMembershipLevel": 1
}
]
Je voudrais faire une boucle par chaque objet dans cette matrice, et de choisir la valeur de chaque clé appelée AssetId
et console.log()
.
Comment pourrais-je faire cela en utilisant jq pour la ligne de commande?
Merci de le rendre plus clair si c'est un [jq] question ou [jquery] question. Ils sont pas sur le même et ne doit pas être utilisé... Votre question est totalement ambigu dans la façon dont vous avez marqué et lui a demandé.
OriginalL'auteur Zimbabwe Elephant | 2016-02-28
Vous devez vous connecter pour publier un commentaire.
L'outil de ligne de commande
jq
écrit sur la sortie standard et/ou STDERR. Si vous voulez écrire le .AssetId informations sur la sortie standard, puis une possibilité serait d'être comme suit:De sortie:
Plus robuste incantation serait:
.[] | .AssetId?
mais votre choix dépendra de ce que vous voulez si il n'y a pas de clé nommée "AssetId".Remarque: Comment puis-je envoyer chacun dans une fonction?
Après avoir essayé cela, j'ai trouvé une erreur. Il dit inattendu de la chaîne.
veuillez voir le jour. Si vous rencontrez toujours des problèmes, veuillez être plus précis et/ou en créer un nouveau SI Q selon le cas.
pas sûr de ce que "function" vous faites allusion. Que vous créez vous-même dans jq?
OriginalL'auteur peak
Vous pouvez aussi le faire via cette commande.
si le tableau comme celui qui est dans mon cas
vous pouvez obtenir le prefixNo avec ci-dessous jq commande.
Pour plus de cas sur la matrice d'itération sur jq vous pouvez vérifier ce billet de blog
OriginalL'auteur erhun