MySQL and Shell Script - Problema com variáveis[RESOLVIDO]

Iniciado por t0rtura, 23 de Julho de 2010, 11:08

tópico anterior - próximo tópico

t0rtura

Alow galera,

Tenho tentado usar mysql com scripts shell mas estou com um pequeno problema, estou tentando pegar um valor de uma tabela e inserir em outra tabela usando o script abaixo:
Estou usando uma base de dados remota:

#!/bin/bash

var1=$(mysql -h 10.10.0.89 -N -u root -ppassword -e "SELECT NOME FROM TABLE1 WHERE IP = '10.10.0.2';" DATABASE1)

mysql -h 10.10.0.89 -u root -ppassword -e "INSERT INTO TABLE2 (NOME) VALUES ('$var1');" DATABASE1

Quando eu rodo o script, o dado capturado na $var1 não está sendo salvo na TABLE2.NOME. Mas o fato curioso é que quando eu abro o terminal e colo estes comandos manualmente tudo funciona e ele grava direitinho os dados na tabela TABLE2 campo NOME. Se eu coloco um echo $var1 antes do insert, ele me retorna o valor correto que foi capturado da TABLE1.NOME, então penso que pode ser algum coisa com relação ao tipo de dado que está sendo capturado, pois como o Shell Script não tem tipagem de dados, pois qualquer outra variável que crio é inserida corretamente na tabela, o problema é somente essa variável que está recebendo o valor vindo de um select no banco de dados, e também pelo fato de estar em um script, se eu fizer os mesmos comandos pelo terminal tudo funciona normalmente.

Alguém tem como me ajudar nessa?
Abs
T0rtura

t0rtura

Resolvido, era o valor da $var1 que não estava sendo gravada corretamente, coloquei o echo $var1 logo depois e pude perceber isto. Daí foi só ajeitar o script para capturar e gravar a variável com o valor correto.