Python e Bash

1. Python e Bash

Antonio Cesario
zurczurc

(usa Debian)

Enviado em 24/01/2019 - 16:58h

Ola pessoal tudo bem ? Estou com um duvida que não estou conseguindo resolver poderiam me ajudar ? Antes de mais nada obrigado.

Duvida : Tenho um script em bash que deveria passar parâmetros para meu programa em python mas não esta funcionando.

programa em bash de nome manda.sh:

#!/bin/bash

python manda_sms.py $1 meu@email.com $2

quando eu coloco : manda.sh 'sensor de temperatura' ' esta critico' #isso não funciona.

antes eu colocava diretamente python manda_sms.py 'sensor de temperatura' meusemail@email.com ' esta critico' isso funciona !!! mas quando tento passar via script bash não da certo.

Alguém poderia me dar uma ajuda . Obrigado.




  


2. Re: Python e Bash

Lauriano Elmiro Duarte
ElmiroDuarte

(usa Debian)

Enviado em 25/01/2019 - 14:15h

boa tarde amigo, você tem o código ?


3. Python e Bash

Antonio Cesario
zurczurc

(usa Debian)

Enviado em 26/01/2019 - 08:14h

Sim tenho :

Manda.sh :



#!/bin/bash

VERIFICA=`cat /home/monitor/logs/$1`

if [ "123" -eq "$VERIFICA" ];
then
clear
echo ""
echo "A flag esta setada"
echo ""
sudo python3 /home/monitor/EMAIL/manda_sms.py $2 email@gmail.com $3
sudo echo "0" > /home/monitor/logs/$1
/bin/faz_update
else
# clear
# echo ""
# echo "A flag nao esta setada"
# echo ""
exit
fi




Programa em python manda_sms.py




#!/usr/bin/env python
#se eu encherguei mais que outros homens e porque eu subi nos ombros de gigantes
# -*- coding: utf-8 -*-
import smtplib, email, sys, time
from datetime import datetime

#Limpa a tela
print("\x1b[2J\x1b[1;1H")
# Verifica se o numero de argumentos esta corrento
if len(sys.argv) != 4:
print (" ")
print ("Uso do comando: rm-email.py <assunto do email> <endereço de email para envio> <mensagem>")
print (" ")
print (" ")
sys.exit(1)

# pega o argv variaveis
titulo = sys.argv[1]
demail = sys.argv[2]
mensagem = sys.argv[3]

# create a list from the receiver in case we have a comma separated string of multiple receivers
rList = []
rList = demail.split(',');

data_e_hora_atuais = datetime.now()
datestr = data_e_hora_atuais.strftime(' - %H:%M - %d/%m/%Y')


# Credenciais
remetente = 'mail@gmail.com'
senha = 'xxxxxxxxxxxxxxxx'

# Informações da mensagem
destinatario = (demail) #'aviso@gmail.com'
assunto = (titulo) #'Temperatura Sala Tecnica '
texto = 'Subject: '+ (mensagem) + ' '+(datestr)

# Preparando a mensagem
msg = '\r\n'.join([
'From: %s' % remetente,
'To: %s' % destinatario,
'Subject: %s' % assunto,
'',
'%s' % texto
])

# Enviando o email
server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(remetente,senha)
server.sendmail(remetente, destinatario, msg)
server.quit()



O envio e feito de um pc rodando linux remotamente :


sudo sshpass -p "teste" ssh -o StrictHostKeyChecking=no -p22 root@10.0.0.2 "compressor_xx 'xx_siemens_7t' 'XX SIEMENS 7T' 'Atencao o compressor da XX Siemens 7T acabou de desligar' "









Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts