msoliver
(usa Debian)
Enviado em 09/02/2022 - 16:39h
andryosribeiro escreveu:
rafael_grether escreveu:
andryosribeiro, depende.
Qual é a forma que você quer? Popular uma variavel através de uma consulta SQL? Pode sim, mas não da forma que voce fez.
Eu utilizo o MariaDB, mas acredito que com o mysql seja igual, uma vez que o MariaDB é fork do mysql.
Da forma que voce fez, a variavel $VER vai ser populada com o cabeçalho da consulta.
Voce mesmo pode verificar isso dando um echo $VER
E tem erros na sua instrução.
O ideal seria fazer:
VER=$(mysql -N --execute "select left(version(), 3) from dual;")
O -N vai ignorar cabeçalho. E aquele seu segundo $ não tem muito sentido, retirei tambem.
Outro erro que voce faz é a comparação direta com a versão.
O ideal é comparar como string, como já apontado pelo Marcelo Oliver.
Perfeito, mas ainda tem algo errado..
É que assim, eu tenho 4 versões do MySQL instaladas no meu servidor. (5.5/5.6/5.7 e 8.0)
Existem scripts que só executam em determinadas versões ai por isso ele precisa validar a versão do MySQL antes de executar.
export mysql="mysql -u root -p*********"
VER=$(mysql -V | awk '{print $5}')
if
[[ (( $VER > 5.7* )) ]];
then
....
Não entendi muito bem como fazer ..
Já que sabe as possíveis saídas de "$ver",
use o case:
ver=5.5
case $ver in
> 5.5) echo cinco.cinco;;
> 5.6) echo cinco.seis;;
> 5.7) echo cinco.sete;;
> 8.0) echo oito;;
> esac
-----------------------------------------------------------------------------------------------------------------
Quanto a sintaxe:
[[ (( $VER > 5.7* )) ]];
Sem comentários...
Quer persistir no erro.....
Paciência
----------------------------------------------------------------------------------------------------------------
______________________________________________________________________
Importante:
lynx --dump
https://www.vivaolinux.com.br/termos-de-uso/ | sed -nr '/^[ ]+Se/,/dou.$/p'
______________________________________________________________________
Nota de esclarecimento:
O comando:
ACIMA, faz parte da minha assinatura.
Att.: Marcelo Oliver
______________________________________________________________________