Fazendo um shell script para envio de e-mail autonomo através de arquivo texto

1. Fazendo um shell script para envio de e-mail autonomo através de arquivo texto

José Augusto
J.augusto.MG

(usa Outra)

Enviado em 12/12/2016 - 14:54h

Olá estou com um problema no meu código ,eu queria armazena os campos do arquivo texto em campos separados Exemplo: Nome ,E-mail,Assunto , ArquivoTextoMSG.txt,Arquivo.zip . assim eu jogaria essas variaveis no mutt para o envio, se alguem sabe de uma forma de fazer e puder me ajudar. No momento consigo separa os campos ,mas quero armazena eles agora.
#!/bin/bash
filename="$1"
while IFS='' read -r LINHA || [[ -n "$LINHA" ]]; do
while [ "$LINHA" ] ;do
iter=${LINHA%%;*}
echo "$iter";
[ "$LINHA" = "$iter" ] && \
LINHA='' || \
LINHA="${LINHA#*;}"

done



done < /home/augusto/texto.txt


texto.txt
jose;j.fulano1@hotmail.com;teste.txt;teste2.o
jose;j.fulano2@hotmail.com;teste.txt;teste2.o
jose;j.fulano3@hotmail.com;teste.txt;teste2.o
jose;j.fulando4@hotmail.com;teste.txt;teste2.o
jose;j.fulano5@hotmail.com;teste.txt;teste2.o
jose;j.fulano6@hotmail.com;teste.txt;teste2.o
jose;j.fulano7@hotmail.com;teste.txt;teste2.o




  


2. Re: Fazendo um shell script para envio de e-mail autonomo através de arquivo texto

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 12/12/2016 - 22:01h

J.augusto.MG escreveu:

Olá estou com um problema no meu código ,eu queria armazena os campos do arquivo texto em campos separados Exemplo: Nome ,E-mail,Assunto , ArquivoTextoMSG.txt,Arquivo.zip . assim eu jogaria essas variaveis no mutt para o envio, se alguem sabe de uma forma de fazer e puder me ajudar. No momento consigo separa os campos ,mas quero armazena eles agora.
#!/bin/bash
filename="$1"
while IFS='' read -r LINHA || [[ -n "$LINHA" ]]; do
while [ "$LINHA" ] ;do
iter=${LINHA%%;*}
echo "$iter";
[ "$LINHA" = "$iter" ] && \
LINHA='' || \
LINHA="${LINHA#*;}"

done



done < /home/augusto/texto.txt


texto.txt
jose;j.fulano1@hotmail.com;teste.txt;teste2.o
jose;j.fulano2@hotmail.com;teste.txt;teste2.o
jose;j.fulano3@hotmail.com;teste.txt;teste2.o
jose;j.fulando4@hotmail.com;teste.txt;teste2.o
jose;j.fulano5@hotmail.com;teste.txt;teste2.o
jose;j.fulano6@hotmail.com;teste.txt;teste2.o
jose;j.fulano7@hotmail.com;teste.txt;teste2.o


Qual o conteúdo do arquivo texto?
COmo deseja a saida?
Poste exemplos

Att.
marcelo oliver




3. Re: Fazendo um shell script para envio de e-mail autonomo através de arquivo texto

José Augusto
J.augusto.MG

(usa Outra)

Enviado em 12/12/2016 - 23:13h

msoliver escreveu:

J.augusto.MG escreveu:

Olá estou com um problema no meu código ,eu queria armazena os campos do arquivo texto em campos separados Exemplo: Nome ,E-mail,Assunto , ArquivoTextoMSG.txt,Arquivo.zip . assim eu jogaria essas variaveis no mutt para o envio, se alguem sabe de uma forma de fazer e puder me ajudar. No momento consigo separa os campos ,mas quero armazena eles agora.
#!/bin/bash
filename="$1"
while IFS='' read -r LINHA || [[ -n "$LINHA" ]]; do
while [ "$LINHA" ] ;do
iter=${LINHA%%;*}
echo "$iter";
[ "$LINHA" = "$iter" ] && \
LINHA='' || \
LINHA="${LINHA#*;}"

done



done < /home/augusto/texto.txt


texto.txt
jose;j.fulano1@hotmail.com;teste.txt;teste2.o
jose;j.fulano2@hotmail.com;teste.txt;teste2.o
jose;j.fulano3@hotmail.com;teste.txt;teste2.o
jose;j.fulando4@hotmail.com;teste.txt;teste2.o
jose;j.fulano5@hotmail.com;teste.txt;teste2.o
jose;j.fulano6@hotmail.com;teste.txt;teste2.o
jose;j.fulano7@hotmail.com;teste.txt;teste2.o


Qual o conteúdo do arquivo texto?
COmo deseja a saida?
Poste exemplos

Att.
marcelo oliver



o arquivo texto tem o nome da pessoa que será enviado separado pelo ; o e-mail , o assunto e os demais arquivos em anexos a serem enviados. A saída desejo separa todos os campos em variaveis tipo $Nome,$Email... assim por diante e utilizar essas variaveis na função mutt echo 'texto padrao' | mutt -s '$Assunto' $Email , e serem enviados para a quantia de linhas(que serão os destinatários) que estiverem no arquivo.txt, resumindo queria que meu script lesse o arquivo texto que contem os dados separassem os campos e enviasse por email.
Espero que tenha explicado melhor agradeço a cooperação.






4. email

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/12/2016 - 19:47h

J.augusto.MG escreveu:

msoliver escreveu:

J.augusto.MG escreveu:

Olá estou com um problema no meu código ,eu queria armazena os campos do arquivo texto em campos separados Exemplo: Nome ,E-mail,Assunto , ArquivoTextoMSG.txt,Arquivo.zip . assim eu jogaria essas variaveis no mutt para o envio, se alguem sabe de uma forma de fazer e puder me ajudar. No momento consigo separa os campos ,mas quero armazena eles agora.
#!/bin/bash
filename="$1"
while IFS='' read -r LINHA || [[ -n "$LINHA" ]]; do
while [ "$LINHA" ] ;do
iter=${LINHA%%;*}
echo "$iter";
[ "$LINHA" = "$iter" ] && \
LINHA='' || \
LINHA="${LINHA#*;}"

done



done < /home/augusto/texto.txt


texto.txt
jose;j.fulano1@hotmail.com;teste.txt;teste2.o
jose;j.fulano2@hotmail.com;teste.txt;teste2.o
jose;j.fulano3@hotmail.com;teste.txt;teste2.o
jose;j.fulando4@hotmail.com;teste.txt;teste2.o
jose;j.fulano5@hotmail.com;teste.txt;teste2.o
jose;j.fulano6@hotmail.com;teste.txt;teste2.o
jose;j.fulano7@hotmail.com;teste.txt;teste2.o


Qual o conteúdo do arquivo texto?
COmo deseja a saida?
Poste exemplos

Att.
marcelo oliver



o arquivo texto tem o nome da pessoa que será enviado separado pelo ; o e-mail , o assunto e os demais arquivos em anexos a serem enviados. A saída desejo separa todos os campos em variaveis tipo $Nome,$Email... assim por diante e utilizar essas variaveis na função mutt echo 'texto padrao' | mutt -s '$Assunto' $Email , e serem enviados para a quantia de linhas(que serão os destinatários) que estiverem no arquivo.txt, resumindo queria que meu script lesse o arquivo texto que contem os dados separassem os campos e enviasse por email.
Espero que tenha explicado melhor agradeço a cooperação.



Boa noite J.augusto, agora entendi . . .
Vamos lá . . .

#!/bin/bash
MENSAGEM="COLOQUE AQUI O CONTEúDO DA MENSAGEM"

while IFS=";" read -r NOME EMAIL ASSUNTO ANEXOS ;do
echo -e "\n$NOME.\n MENSAGEM | mutt -s "$ASSUNTO" -a "$ANEXOS" -- "$EMAIL"
sleep 2.5
done < /home/augusto/texto.txt


É isso . . .

Se a resposta foi esclarecedora e sanou sua duvida, marque o tópico como resolvido, e a minha resposta como a melhor . . .
Para verificar as configurações do mutt, veja minha resposta em:
https://www.vivaolinux.com.br/topico/Shell-Script/Como-enviar-email-pelo-terminal 

Abç.:
Marcelo Oliver








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts