Script execução com SSH

1. Script execução com SSH

Wagner Filipe Garrett
smithn

(usa Ubuntu)

Enviado em 01/07/2010 - 15:31h

Olá, tenho um script em q declaro algumas variáveis e depois chamo um SSH para outra maquina, mas quando vou "setar" algumas variáveis elas não são carregadas, ficam vazias.
Se executo esse script localmente ele funciona normalmente mas se chamo via ssh ele não executa.

Gostaria da ajuda de vcs.

Segue meu script:
Ele serve para fazer uma busca em um arquivo de erros do tipo ORA- no dia anterior.
------
INST=$1
SERVER=$2

data_ontem=`date --date '1 day ago' "+%a %b %d"`
data_hoje=`date "+%a %b %d"`
echo $data_ontem
echo $data_hoje

set -vx
ssh ${SERVER} <<EOF
#-----------------------------------------------------------------------
#Numero da linha do primeiro registro de log de ontem
awk '/'"$data_ontem"'/{print NR}' /oracle/admin/instancia/bdump/alert_${INST}.log > valores_ontem.linhas
ln_dt_ontem=`cat valores_ontem.linhas | head -1`;
echo ${ln_dt_ontem}

#-----------------------------------------------------------------------
#Numero da linha do primeiro registro de log de hoje
awk '/'"$data_hoje"'/{print NR}' /oracle/admin/instancia/bdump/alert_${INST}.log > valores_hoje.linhas
ln_dt_hoje=`cat valores_hoje.linhas | head -1`;
echo ${ln_dt_hoje}

#-----------------------------------------------------------------------
tmp=`expr ${ln_dt_hoje} - ${ln_dt_ontem}`;
nr_ln=`expr ${tmp} - 1`;

#Copiar linhas referentes ao dia de ontem para um arquivo temporario
grep -A${nr_ln} "${data_ontem}" /oracle/admin/instancia/bdump/alert_${INST}.log > ln_ontem.tmp
head -${tmp} ln_ontem.tmp > ln_ontem.tmp2

#Procura erros ORA- no arquivo temporario
numero_erros=`grep "^ORA-" ln_ontem.tmp2 | wc -l`;
echo ${numero_erros}
EOF
#Fim do SCRIPT


Obrigado!


  


2. Re: Script execução com SSH

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/07/2010 - 16:11h

No inicío do comando EOF, tente deixá-lo com um hífen, dessa forma:

<<-EOF

Houve casos comigo q só funcionou dessa forma. Teste ae.


3. Re: Script execução com SSH

Wagner Filipe Garrett
smithn

(usa Ubuntu)

Enviado em 01/07/2010 - 16:22h

Obrigado Renato, mas não deu certo.


4. completando...

Wagner Filipe Garrett
smithn

(usa Ubuntu)

Enviado em 01/07/2010 - 16:26h

só completando, as variáveis q não funcionam são as que estão dentro do ssh depois do <<EOF, são elas:
ln_dt_ontem
ln_dt_hoje
tmp
nr_ln
numero_erros

elas não são setadas.
Obrigado.


5. Re: Script execução com SSH

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/07/2010 - 16:31h

Entendi. Uma pergunta: vc consegue se conectar no SSH sem senha?


6. res...

Wagner Filipe Garrett
smithn

(usa Ubuntu)

Enviado em 01/07/2010 - 16:37h

consigo, está passando direto.


7. Re: Script execução com SSH

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/07/2010 - 16:40h

Ah, tá... uai, tenta modificar o comando, colocando assim:

export variavel=bla,bla,bla


O q tá acontecendo é q quando vc se conecta lá, não tenha um profile, saca? Eu imagino isso. Tente ae.


8. Re: Script execução com SSH

Wagner Filipe Garrett
smithn

(usa Ubuntu)

Enviado em 01/07/2010 - 16:46h

tentei mas continua com erro.

Eu tentei passar junto com o ssh o parametro ~/.bash_profile, mas tbm não aconteceu nada e deu erro dizendo q eu não tinha permissão no arquivo .bash_profile


Obrigado


9. Re: Script execução com SSH

André Luiz Boeno Thompson
traylo

(usa Ubuntu)

Enviado em 02/07/2010 - 20:15h

porque não deixa o script na outra ponta e o executa via ssh vai ter menos problemas com variáveis locais






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts