De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Envio de mensagens diretamente com Sendmail

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 30 de Agosto de 1999

É possível se enviar mensagens diretamente com o programa sendmail(MTA ou Mail Transport Agent), sem o intermédio de um software intermediário (MUA ou Mail User Agent).

É claro que esta opção não é das mais convenientes, visto que é muito mais fácil enviar mensagens com programas como elm, netscape composer, pine e outros.

Entretanto, especialmente do ponto de vista do administrador de sistemas, existem ocasiões em que pode ser mais conveniente usar diretamente o programa sendmail.

Uma destas vantagens é a configuração do cabeçalho de forma a atender determinadas necessidades.

Em toda mensagem de correio eletrônico o cabeçalho é separado do corpo da mensagem por uma linha em branco.

Suponhamos então que eu queira enviar uma mensagem para todos os usuários, como abaixo:

  --------------------
  Reply-To: suporte@unicamp.br
  Subject: Parada Programada
  
  Senhores Usuários(as),
  
  Hoje haverá uma parada programada às 17:00horas
  com retorno previsto para as 17:30 hs.
  
  Atenciosamente,
  
  Suporte Técnico
  --------------------

Foram incluídas duas linhas de cabeçalho. A primeira delas "Reply-To", define quem irá receber a resposta. Neste caso o "suporte", que consiste de várias pessoas. Não é conveniente que respostas a mensagens deste tipo retornem para apenas uma pessoa. A segunda linha define o "Subject" da mensagem. Em seguida, uma linha em branco e finalmente a mensagem.

Para enviar esta mensagem, podemos fazer o seguinte shell script:

  #!/bin/ksh
  
  for user in ""awk -F: '{print $1}' /etc/passwd""
  do 
  /usr/lib/sendmail $user < msg
  echo $user
  echo $user > ultimo-endereço 
  sleep 2
  done

Foi colocado um controle, redirecionando o nome do último usuário para quem a mensagem foi enviada. Desta forma, em caso de queda de sistema ou algum outro contratempo, o processo pode ser retomado do ponto em que foi interrompido. Basta remover da lista de usuários os nomes até o último.

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Rubens Queiroz de Almeida