Criação Bash [RESOLVIDO]

1. Criação Bash [RESOLVIDO]

thiago
lacerdat25

(usa Red Hat)

Enviado em 27/02/2019 - 15:29h

Galera!!!

Estou criando um BASH que coleta do site da anbima o valor DCI mensal.
Estou puxando essa informação via curl, e recebo um valor flutuando EX: "2,40".

Ao fazer a condicional tenho como retorno: line 5: [: "6,40": esperado expressão de número inteiro

Segue exemplo abaixo:
taxa1=`curl -s https://www2.cetip.com.br/ConsultarTaxaDi/ConsultarTaxaDICetip.aspx | jq '.taxa'`

if [ "$taxa1" -eq "6,40" ] ; then
echo "OK - Taxa DI 6,40"
exit 0
else
echo "CRITICO - Mudou o valor da Taxa DI $taxa1"


Poderiam me dar um help?

Obrigado!


  


2. Re: Criação Bash

Matheus
pylm

(usa Gentoo)

Enviado em 27/02/2019 - 15:47h

Bash não trabalha com float então você teria que usar uma ferramenta externa (como o bc) pra fazer o cálculo.

Uma versão funcional:


#!/bin/bash

taxa1=$(curl -s https://www2.cetip.com.br/ConsultarTaxaDi/ConsultarTaxaDICetip.aspx | jq .taxa | cut -d '"' -f 2 | sed -r 's/,/./g')

if [ $(echo "taxa1 == 6.40" | bc) ] ; then
echo "OK - Taxa DI 6,40"
exit 0
else
echo "CRITICO - Mudou o valor da Taxa DI $taxa1"
fi




./script
OK - Taxa DI 6,40



3. Re: Criação Bash

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 27/02/2019 - 17:02h

lacerdat25 escreveu:

Galera!!!

Estou criando um BASH que coleta do site da anbima o valor DCI mensal.
Estou puxando essa informação via curl, e recebo um valor flutuando EX: "2,40".

Ao fazer a condicional tenho como retorno: line 5: [: "6,40": esperado expressão de número inteiro

Segue exemplo abaixo:
taxa1=`curl -s https://www2.cetip.com.br/ConsultarTaxaDi/ConsultarTaxaDICetip.aspx | jq '.taxa'`

if [ "$taxa1" -eq "6,40" ] ; then
echo "OK - Taxa DI 6,40"
exit 0
else
echo "CRITICO - Mudou o valor da Taxa DI $taxa1"


Poderiam me dar um help?

Obrigado!


Boa tarde Lacerda.
Segue sugestão:

url="https://www2.cetip.com.br/ConsultarTaxaDi/ConsultarTaxaDICetip.aspx"
curl -s "$url"|awk -F'"[:,]"' '{if($2 == "6,40") print "OK - Taxa DI ",$2;else print "CRITICO: Mudou o Valor da taxa DI ",$2}'

OK - Taxa DI 6,40
Att.:
Marcelo Oliver


4. Re: Criação Bash [RESOLVIDO]

Gabriel
rabbit

(usa Debian)

Enviado em 27/02/2019 - 22:18h


taxa1=$( curl -s https://www2.cetip.com.br/ConsultarTaxaDi/ConsultarTaxaDICetip.aspx | cut -d"\"" -f4 )

[ "$taxa1" = "6,40" ] && echo "Ok - Taxa DI $taxa1"
exit 0



Ae mano curtinho e prático.

x.x
run rabbit run






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts