Mostra la pàginaRevisions anteriorsQuè hi enllaçaExporta a PDFTorna dalt Aquesta pàgina és només de lectura. Podeu veure'n el codi font, però no podeu canviar-la. Consulteu el vostre administrador si penseu que això és degut a algun error. = json {{tag>development addendum}} == install (raspberry) <code bash> cd /tmp wget https://github.com/stedolan/jq/releases/download/jq-1.5/jq-1.5.tar.gz tar xfvz jq-1.5.tar.gz cd jq-1.5 ./configure && make && sudo make install </code> == tutorials * [[https://linuxhint.com/bash_jq_command/]] == jq (shell) === selección <code javascript; ejemplo> { "ACTION": "domain.list", "DATA": [ { "TYPE": "slave", "AXFR_IPS": "none", "DOMAIN": "domain1.com", "TTL_SEC": 0, "SOA_EMAIL": "", "DOMAINID": 11111, "DESCRIPTION": "", "EXPIRE_SEC": 0, "RETRY_SEC": 0, "STATUS": 1, "LPM_DISPLAYGROUP": "", "REFRESH_SEC": 0 }, { "TYPE": "slave", "AXFR_IPS": "none", "DOMAIN": "domain2.net", "TTL_SEC": 0, "SOA_EMAIL": "", "DOMAINID": 22222, "DESCRIPTION": "", "EXPIRE_SEC": 0, "RETRY_SEC": 0, "STATUS": 1, "LPM_DISPLAYGROUP": "", "REFRESH_SEC": 0 }, { "TYPE": "slave", "AXFR_IPS": "none", "DOMAIN": "domain3", "TTL_SEC": 0, "SOA_EMAIL": "", "DOMAINID": 33333, "DESCRIPTION": "", "EXPIRE_SEC": 0, "RETRY_SEC": 0, "STATUS": 1, "LPM_DISPLAYGROUP": "", "REFRESH_SEC": 0 }, ], "ERRORARRAY": [] } </code> <code bash selecciona segundo subdocumento del documento DATA> | jq '.DATA | .[2]'</code> <code bash selecciona todos los elementos de DOMAINID> | jq '.DATA | .[].DOMAINDID'</code> <code bash selecciona elemento por criterio/filtro> | jq '.DATA[] | select(.DOMAIN == "domain2") | .DOMAINID'</code> /via: [[https://github.com/stedolan/jq/issues/370]] === script <code bash> sample='[{"name":"foo"},{"name":"bar"}]' for row in $(echo "${sample}" | jq -r '.[] | @base64'); do _jq() { echo ${row} | base64 --decode | jq -r ${1} } echo $(_jq '.name') done </code> /via: [[https://starkandwayne.com/blog/bash-for-loop-over-json-array-using-jq/]] development/json/start.txt Darrera modificació: 25/03/2020 01:23per mate