Shell Script

1. Shell Script

Andryos
andryosribeiro

(usa Red Hat)

Enviado em 13/12/2021 - 14:43h

Tarde pessoal, não entendo o motivo do meu shell não executar o mysql, eu passo o parametro da tabela que quero mas ele não traz nada..

#Parametro database
table_name=$1

if [ -z $1 ]; then
echo ""
echo "================================================================="
echo "Database Inform: lindex <table_name>"
echo "================================================================="
echo ""
fi

if [ -n $1 ]; then

$sql -e "SELECT DISTINCT
a.table_name as 'table',
b.table_rows,
ROUND(b.data_free / 1024, 2) AS 'data_free (KB)',
ROUND(((b.data_length + b.index_length) / 1024), 2) as 'Table_size (KB)',
ROUND(index_length / 1024, 2) as 'Index_size (KB)'

from information_schema.statistics as a
INNER JOIN information_schema.TABLES as b ON a.table_name = b.table_name GROUP BY 1,2;" 2>/dev/null

fi



  


2. Re: Shell Script

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/12/2021 - 15:45h

Boa tarde.
Faltou o $ em table_name.
${table_name}
Use if else fi
No lugar de dois "ifs".


______________________________________________________________________
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
______________________________________________________________________



3. Shell Script

Andryos
andryosribeiro

(usa Red Hat)

Enviado em 13/12/2021 - 16:01h

Desta maneira mano?
Se sim, desse jeito não retornou nada também. :/

#Parametro database
tablename=$1

if [ -z $1 ]; then
echo ""
echo "================================================================="
echo "Database Inform: lindex <table_name>"
echo "================================================================="
echo ""

else

$sql -e "SELECT DISTINCT
a.table_name as 'table',
b.table_rows,
ROUND(b.data_free / 1024, 2) AS 'data_free (KB)',
ROUND(((b.data_length + b.index_length) / 1024), 2) as 'Table_size (KB)',
ROUND(index_length / 1024, 2) as 'Index_size (KB)'

from information_schema.statistics as a
INNER JOIN information_schema.TABLES as b ON a.table_name = b.table_name GROUP BY 1,2

where table_name = ${tablename};" 2>/dev/null

fi



4. Re: Shell Script

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/12/2021 - 19:04h

Faça um teste.
#!/bin/bash
#Pega Parâmetro $1#
printf '\x1bc';
[ "$1" ] && { table="$1";echo "Table: $table";} || { echo -e "Mensagem de Erro";exit;}
echo -e "\nSucesso"


Mensagem de Erro, centralizada:
#!/bin/bash
#Pega Parâmetro $1#
linha=$(printf "%50s"|sed 'y/ /=/');
printf '\x1bc';
if [ -z "$1" ];then
echo -e "${linha}\e[2;$(((50-16)/2))f\e[1;38mMensagem de Erro\e[m\n${linha}\n";
exit;
else
table="$1";
echo "Table: ${table}";
fi



______________________________________________________________________
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
______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts