Get values for a given key and its parent with jq

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
0
down vote

favorite












I've got a JSON array like so:




"1":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.0
,
"2":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.0




I want to retrieve the value of "conns" atribute for each object id. I am new at jq and I cant found clear examples.



I have tried the following:



echo "$OUTPUT" | jq -r ..conns


Which returns all the values for conns, but thats is not what I needed. The spected output would be:



1 1.0
2 2.0


Any ideas?










share|improve this question









New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



















  • There is no array in the data.
    – Kusalananda
    14 hours ago














up vote
0
down vote

favorite












I've got a JSON array like so:




"1":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.0
,
"2":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.0




I want to retrieve the value of "conns" atribute for each object id. I am new at jq and I cant found clear examples.



I have tried the following:



echo "$OUTPUT" | jq -r ..conns


Which returns all the values for conns, but thats is not what I needed. The spected output would be:



1 1.0
2 2.0


Any ideas?










share|improve this question









New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.



















  • There is no array in the data.
    – Kusalananda
    14 hours ago












up vote
0
down vote

favorite









up vote
0
down vote

favorite











I've got a JSON array like so:




"1":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.0
,
"2":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.0




I want to retrieve the value of "conns" atribute for each object id. I am new at jq and I cant found clear examples.



I have tried the following:



echo "$OUTPUT" | jq -r ..conns


Which returns all the values for conns, but thats is not what I needed. The spected output would be:



1 1.0
2 2.0


Any ideas?










share|improve this question









New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I've got a JSON array like so:




"1":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.0
,
"2":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.0




I want to retrieve the value of "conns" atribute for each object id. I am new at jq and I cant found clear examples.



I have tried the following:



echo "$OUTPUT" | jq -r ..conns


Which returns all the values for conns, but thats is not what I needed. The spected output would be:



1 1.0
2 2.0


Any ideas?







json jq






share|improve this question









New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 14 hours ago









Rui F Ribeiro

38.1k1475123




38.1k1475123






New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 15 hours ago









A1t0r

1034




1034




New contributor




A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






A1t0r is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











  • There is no array in the data.
    – Kusalananda
    14 hours ago
















  • There is no array in the data.
    – Kusalananda
    14 hours ago















There is no array in the data.
– Kusalananda
14 hours ago




There is no array in the data.
– Kusalananda
14 hours ago










1 Answer
1






active

oldest

votes

















up vote
3
down vote



accepted










$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1 1
2 2


Seems like jq translates 1.0 to 1 and 2.0 to 2. Altering the input for clarity:



$ cat file.json

"1a":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.1
,
"2b":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.2


$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1a 1.1
2b 2.2


Refs:



  • https://stedolan.github.io/jq/manual/#Variable/SymbolicBindingOperator:...as$identifier|...


  • https://stedolan.github.io/jq/manual/#Stringinterpolation-(foo)





share|improve this answer




















  • Thanks! Worked like a charm!
    – A1t0r
    15 hours ago










Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);






A1t0r is a new contributor. Be nice, and check out our Code of Conduct.









 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f481288%2fget-values-for-a-given-key-and-its-parent-with-jq%23new-answer', 'question_page');

);

Post as a guest






























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes








up vote
3
down vote



accepted










$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1 1
2 2


Seems like jq translates 1.0 to 1 and 2.0 to 2. Altering the input for clarity:



$ cat file.json

"1a":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.1
,
"2b":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.2


$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1a 1.1
2b 2.2


Refs:



  • https://stedolan.github.io/jq/manual/#Variable/SymbolicBindingOperator:...as$identifier|...


  • https://stedolan.github.io/jq/manual/#Stringinterpolation-(foo)





share|improve this answer




















  • Thanks! Worked like a charm!
    – A1t0r
    15 hours ago














up vote
3
down vote



accepted










$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1 1
2 2


Seems like jq translates 1.0 to 1 and 2.0 to 2. Altering the input for clarity:



$ cat file.json

"1a":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.1
,
"2b":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.2


$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1a 1.1
2b 2.2


Refs:



  • https://stedolan.github.io/jq/manual/#Variable/SymbolicBindingOperator:...as$identifier|...


  • https://stedolan.github.io/jq/manual/#Stringinterpolation-(foo)





share|improve this answer




















  • Thanks! Worked like a charm!
    – A1t0r
    15 hours ago












up vote
3
down vote



accepted







up vote
3
down vote



accepted






$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1 1
2 2


Seems like jq translates 1.0 to 1 and 2.0 to 2. Altering the input for clarity:



$ cat file.json

"1a":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.1
,
"2b":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.2


$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1a 1.1
2b 2.2


Refs:



  • https://stedolan.github.io/jq/manual/#Variable/SymbolicBindingOperator:...as$identifier|...


  • https://stedolan.github.io/jq/manual/#Stringinterpolation-(foo)





share|improve this answer












$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1 1
2 2


Seems like jq translates 1.0 to 1 and 2.0 to 2. Altering the input for clarity:



$ cat file.json

"1a":
"available_memory": 1086419656.0,
"available_memory_no_overbooking": 1086419656.0,
"conns": 1.1
,
"2b":
"available_memory": 108641236.0,
"available_memory_no_overbooking": 10861216.0,
"conns": 2.2


$ jq -r 'keys as $k | "($k) (.[$k].conns)"' file.json
1a 1.1
2b 2.2


Refs:



  • https://stedolan.github.io/jq/manual/#Variable/SymbolicBindingOperator:...as$identifier|...


  • https://stedolan.github.io/jq/manual/#Stringinterpolation-(foo)






share|improve this answer












share|improve this answer



share|improve this answer










answered 15 hours ago









glenn jackman

49.2k469106




49.2k469106











  • Thanks! Worked like a charm!
    – A1t0r
    15 hours ago
















  • Thanks! Worked like a charm!
    – A1t0r
    15 hours ago















Thanks! Worked like a charm!
– A1t0r
15 hours ago




Thanks! Worked like a charm!
– A1t0r
15 hours ago










A1t0r is a new contributor. Be nice, and check out our Code of Conduct.









 

draft saved


draft discarded


















A1t0r is a new contributor. Be nice, and check out our Code of Conduct.












A1t0r is a new contributor. Be nice, and check out our Code of Conduct.











A1t0r is a new contributor. Be nice, and check out our Code of Conduct.













 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f481288%2fget-values-for-a-given-key-and-its-parent-with-jq%23new-answer', 'question_page');

);

Post as a guest













































































Popular posts from this blog

How to check contact read email or not when send email to Individual?

Displaying single band from multi-band raster using QGIS

How many registers does an x86_64 CPU actually have?