Interpretadores de comando [RESOLVIDO]

1. Interpretadores de comando [RESOLVIDO]

Wagner
wagner31

(usa CentOS)

Enviado em 07/02/2017 - 18:12h

E ai pessoal blz?
é o seguinte, estou querendo montar um script porém preciso colocar 2 interpretadores de texto para entender 2 tipos de chamadas diferentes, mas quando coloco os 2 na primeiras linhas do script o segundo nunca funciona, estou tentando usar o interpretador "#!/usr/bin/expect -f" só para poder colocar a senha quando ele solicitar, se alguém souber uma outra forma de fazer isso agradeço, segue o script


#!/bin/bash
#!/usr/bin/expect -f
#Variaveis de email / log / data
FROM="wagner@teste.com.br"
TO="wagner@teste.com.br"
DATA="$(date +\%Y-\%m-\%d)"
ARQ_LOG="/var/log/scheduler/Backup-"$DATA".log"

# Aqui o assunto da mensagem com a data
SUBJECT="Backup"

# Executa o backup incremental e também cria o log do backup
spawn rsync -avh --no-times --ignore-existing -e 'ssh' root@192.168.0.10:/var/iwss/migration/schedule/* /tmp/ > $ARQ_LOG
expect "password:"
send "SENHA_AQUI\n";

interact

LOG=$(cat $ARQ_LOG)

#Procura a palavra "erro" no log
if egrep 'error' $ARQ_LOG;then

cat <<EOF | sendmail -t
From:$FROM
To:$TO
Subject: ERRO no Backup Proxy Trend as $(date "+%r")

Ocorreu algum erro no processo de backup!
Verificar log abaixo e/ou comunicação origem/destino

ARQUIVO:$ARQ_LOG

$LOG

EOF

else

cat <<EOF | sendmail -t
From:$FROM
To:$TO
Subject:$SUBJECT $(date +%X)

Upload Database para Storage
Segue abaixo a lista de arquivos copiados:

ARQUIVO:$ARQ_LOG

$LOG

EOF
fi
#
#Fim do script



  


2. Re: Interpretadores de comando [RESOLVIDO]

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 07/02/2017 - 23:24h

Divida para conquistar.

Separe o script q usa o expect, e chame quando necessário.

Exemplo de script expect com chamada de parametros: https://www.vivaolinux.com.br/script/Trocar-senha-de-usuario-via-SSH/


3. Re: Interpretadores de comando

Wagner
wagner31

(usa CentOS)

Enviado em 08/02/2017 - 11:11h

rai3mb escreveu:

Divida para conquistar.

Separe o script q usa o expect, e chame quando necessário.

Exemplo de script expect com chamada de parametros: https://www.vivaolinux.com.br/script/Trocar-senha-de-usuario-via-SSH/



RAI3MB, consegui resolver o problema na execução do comando do rsync ficou da seguinte forma:


sshpass -p "SENHA" rsync -avh --no-times --ignore-existing -e 'ssh' root@192.168.0.10:/var/iwss/migration/schedule /tmp/




4. Re: Interpretadores de comando [RESOLVIDO]

Wagner
wagner31

(usa CentOS)

Enviado em 08/02/2017 - 11:33h

Script resolvido dessa forma


#!/bin/bash
#!/usr/bin/expect -f
#Variaveis de email / log / data
FROM="wagner@teste.com.br"
TO="wagner@teste.com.br"
DATA="$(date +\%Y-\%m-\%d)"
ARQ_LOG="/var/log/scheduler/Backup-"$DATA".log"

# Aqui o assunto da mensagem com a data
SUBJECT="Backup"

# Executa o backup incremental e também cria o log do backup
sshpass -p "SENHA" rsync -avh --no-times --ignore-existing -e 'ssh' root@192.168.0.10:/var/iwss/migration/schedule/* /tmp/ > ARQ_LOG

LOG=$(cat $ARQ_LOG)

#Procura a palavra "erro" no log
if egrep 'error' $ARQ_LOG;then

cat <<EOF | sendmail -t
From:$FROM
To:$TO
Subject: ERRO no Backup Proxy Trend as $(date "+%r")

Ocorreu algum erro no processo de backup!
Verificar log abaixo e/ou comunicação origem/destino

ARQUIVO:$ARQ_LOG

$LOG

EOF

else

cat <<EOF | sendmail -t
From:$FROM
To:$TO
Subject:$SUBJECT $(date +%X)

Upload Database para Storage
Segue abaixo a lista de arquivos copiados:

ARQUIVO:$ARQ_LOG

$LOG

EOF
fi
#
#Fim do script







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts