J'essaie de scinder mon objet json en plusieurs tableaux json. La commande ci-dessous fonctionne sous Linux pour diviser le fichier en plusieurs tableaux putRequest.scission de json en plusieurs fichiers dans Windows
jq -cM --argjson sublen '2' 'range(0; length; $sublen) as $i | .[$i:$i+$sublen]' \
input.json | split -l 1 -da 3 - meta2_
Référence: Split a JSON array into multiple files using command line tools
directement en cours d'exécution ci-dessous commande dans l'invite de commande me donne 3 demandes de vente.
jq ".MusicCollection[]" music.json
Cependant, quand je boucle ci-dessous pour en script batch, il me donne juste }
. Est-ce que quelqu'un peut me guider comme je devrais obtenir la même sortie de l'invite de commande avec la boucle for?
Il ne ressort pas clairement de votre question ce que vous aimeriez obtenir comme résultat. Pourriez-vous être assez aimable pour être plus précis - montrer le contenu du fichier résultant (ou chacun d'eux si vous voulez avoir l'ensemble) en fonction du fichier d'entrée que vous avez montré dans cette question – jsxt
I Je ne suis pas sûr de ce que vous demandez exactement, mais ... l'invite de commande Windows n'a pas d'équivalent d'un type de tableau pour les variables. Est-ce ce que vous essayez d'obtenir? –
@jsxt: J'ai besoin d'un o/p dans plusieurs fichiers. Ex. Si je définis une taille de lot de 2, je devrais obtenir 2 objets JSON comme mentionné ci-dessous dans des fichiers différents. Fichier 1: {"MusicCollection": [{"PutRequest": {"Item": {"Artiste": {"S": "Personne ne sait"}, "SongTitle": {"S": "Appel Me Today "}," AlbumTitle ": {" S ":" Quelque peu célèbre "}}}}, {" PutRequest ": {" Item ": {" Artiste ": {" S ":" Acme Band "}," SongTitle ": {" S ":" Happy Day "}," AlbumTitle ": {" S ":" Songs About Life "}}}}]} Fichier 2: {" MusicCollection ": [{" PutRequest " : {"Item": {"Artiste": {"S": "Personne ne le sait"}, "Titre de chanson": {"S": "Scared de mon ombre"}, "Titre de l'album": {"S": "Blue Sky Blues"}}}}}} – Dwarrior