# Array associativo
declare -A clientes=(
[francisco]='192.168.1.10:9090'
[rodrigo]='192.168.1.20:23'
[paula]='192.168.1.40:29'
)
test()
{
local retorno servidores servidor
# ip ou hostname
user=('usuario')
senha=('senha')
timeout=40
tentativas=2
err="90"
var config ssh_config_t
#var configt ssh_config_t
# Lê a lista de sevidores.
for nome in ${@:2}; do
# Implementa
var cliente ssh_t
echo "${servidor%:*}"
echo "${servidor#*:}"
# Separa os campos delimitados por ':'
config.host = "${clientes[$nome]%:*}" # host
config.port = "${clientes[$nome]#*:}" # port
config.user = "$user"
config.pass = "$senha"
config.connect_timeout = "$timeout"
config.connection_attempts = "$tentativas"
# Inicializa a sessão
cliente.connect_ex config
# Executa o script no host remoto e salva o retorno do script.
retorno=$(cliente.exec './alerta.sh')
name=$(cliente.shell 'hostname')
erro="Sua partição / está com $retorno % de uso. Favor verificar!"
if [ $retorno -gt $err ]; then
# Anexa e envia o retorno.
ShellBot.sendMessage —chat_id ${message_chat_id[$id]} —text "$name $servidor\n\n$erro"
fi
# Fecha a sessão.
cliente.close
done
}
Created
October 5, 2018 03:17
-
-
Save shellscriptx/5cea432518e4e6acc646305df1b582f4 to your computer and use it in GitHub Desktop.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment