shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Gerar JSON via Shell Script


From: MrBiTs
Subject: Re: [shell-script] Gerar JSON via Shell Script
Date: Tue, 19 May 2015 10:32:01 -0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

On 19-05-2015 10:21, address@hidden [shell-script] wrote:
> 
> 
> Pessoal,
> 
> 
> Preciso gerar um resultado em formato JSON a partir de um select em uma base 
> de dados Oracle.
> 
> 
> A parte de gerar o result set via Oracle eu toco ...
> 
> 
> sql = "SELECT tablespace_name FROM dba_tablespaces ORDER BY 1";
> 
> 
> SYSAUX
> 
> SYSTEM
> 
> TEMP1
> 
> UNDOTBS1
> 
> USERS
> 
> 
> A partir dos dados acima .. preciso gerar o seguinte formato ...
> 
> 
> {"data":
> 
> {"{#TABLESPACE}": "SYSAUX"},
> 
> {"{#TABLESPACE}": "SYSTEM"},
> 
> {"{#TABLESPACE}": "TEMP1"},
> 
> {"{#TABLESPACE}": "UNDOTBS1"},
> 
> {"{#TABLESPACE}": "USERS"}]}
> 

A consulta deve trazer a você algumas linhas de dados. Faz um for ou um while 
nessa linhas, trabalhando o IFS delas e usando set -
$Linha para gerar um array variando de $1 a $N, N sendo a quantidade de campos 
que você tem, e use here documents para montar o
json. Algo como:

cat <<__EOF__
{"data":
    {"CAMPO1": $1,
     "CAMPO2": $2,
     ...
     "CAMPON": $N}
}"
__EOF__

Acho que é um caminho.


- -- 
echo \
92068024550315826382182475332597232583172815031242834207741253772942036490931873625388097114598312827695369663195686275740885871064\
49559092082392224085340303317471722482382935095394721645717388708188629714392464979911474364314309646036004586317583543814023523682\
20521740203494788796697543569807851284795072334480481413675418412856581412376640379241258356436205061541557366641602992820546646995\
466P \
| dc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBCAAGBQJVWztRAAoJEG7IGPwrPKWrLo8H/0vLQY5d6yT0nGP2PAntlPkB
DsUwVuZxHYYcyMSDh6FPRxoJcyfCiwgqoewiLhHtcXrxgYjOHTYOp5gyrEvR7Bfo
YhneKc7t70VNwKuS7M2XM4g5zgr7+1XYbd2+w0Qf3rfccquvv77jgnESeE4IpaGx
6D/DyUiLw00/OHvgZ+LY2BOI8BETL0KHWCPnlicqJZoWcYd2iDJ0txcJstzLa4X/
zjso5AtkldqvA2DmTfS37NivCYEFAlhwZl4CR6b+64t8u6Mm2oSUVR7M0QnTgkMY
hheLzc5GZWPh2kfCcuUHxDSwfwYdRfB9hK5ACDlYrzZJDwc5g/V3kWEeuAVPDO8=
=se++
-----END PGP SIGNATURE-----


reply via email to

[Prev in Thread] Current Thread [Next in Thread]