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 11:26:27 -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 11:20, Ultimo de Miranda address@hidden [shell-script] wrote:
> Que gambiarra   !!  :) [root@guitar tmp]# cat blah SYSAUX SYSTEM TEMP1 
> UNDOTBS1 USERS [root@guitar tmp]# awk
> 'BEGIN{printf("%s\n","{\"data 
> \":")}{printf("{\"{#TABLESPACE}\":\"%s\"},\n",$1)}' blah|tac|tr '\n' ' '|sed 
> 's/,/]}/'|tr ' '
> '\n'|tac {"data": {"{#TABLESPACE}":"SYSAUX"}, {"{#TABLESPACE}":"SYSTEM"}, 
> {"{#TABLESPACE}":"TEMP1"}, 
> {"{#TABLESPACE}":"UNDOTBS1"}, {"{#TABLESPACE}":"USERS"}]}
> 
> 1) awk imprime primeira linha + cada linha de blah  com virgula no final 2) 
> inverte a saida pra que a ultima linha seja a
> primeira 3) tr transfoma tudo em uma linha só para que o sed possa agir 
> apenas na primeira ocorrencia da virgula 4) o sed troca
> a primeira virgula pela sequencia "]}" 5) tr troca espaço por quebra de linha 
> 6) inverte a saida de novo

Sensacional! Ainda acho que here documents deixa a coisa mais simples, até 
porque eu imagino uma saída da query assim:

sysaux system temp1 undotbs1 users
sysaux system temp1 undotbs1 users
sysaux system temp1 undotbs1 users
sysaux system temp1 undotbs1 users
sysaux system temp1 undotbs1 users
sysaux system temp1 undotbs1 users



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

iQEcBAEBCAAGBQJVW0gTAAoJEG7IGPwrPKWrQfcH/2DbgeZX7eikL6yN6cVMmyZs
pixxXp1c2xolCnNFXippkZA+1KnY5uZuYUFvTVzpA9jtTXZZcFut486Mla9LXHrk
q3JG39H4k7LhDz7NJRQ2w/BlC9n3XOE6640pwEnhBz/Efj/exW1Q05fQwyAJ6kgk
uFNH+9cRYkPxFjb9QzLY1Bcc90wCIWi6dAutop+7XNl3xXZGS/+hfWrF5vcWtlxB
tR0nug0Y/7TTmrNGTmV04RBG+ryUx3BnJcux1NtLjUCzxZrhoEWBUWFVYOXQVkCY
IumuLfHt5XcgAdHa1vAxRAoDD9V1vTO3a+w5JNVurz9XJjvLwOzWE1Qoq3qRyEc=
=1bKw
-----END PGP SIGNATURE-----


reply via email to

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