Gerar e-mails com conteúdo em arquivos diferentes

0

Estou usando um script para criar uma senha aleatória para um usuário.
O arquivo parece com

user1:password1
user2:password2
user3:password3

As senhas são openssl passwd hashed. Eu tenho um arquivo próprio onde a senha é escrita em texto não criptografado. Não, quero enviar um e-mail para os usuários com a nova senha.
Eu tenho um arquivo (maillist.txt) com

user1:[email protected]
user2:[email protected]
user3:[email protected]

Agora eu quero gerar um e-mail para user1.
Isso deve gerar um e-mail para [email protected], contendo o nome de usuário (user1) e a senha (password1). Eu quero fazer isso com mailx.
Você pode por favor me ajudar?

Cumprimentos
Manu Post antigo

    
por Manu_H 06.01.2017 / 15:46

1 resposta

0

Tente o seguinte:

join -t: cleartext.txt maillist.txt | awk -F: '{ print "echo Username: "$1" Passwd: "$2" | mailx -s Information "$3 }' |sh

Se várias linhas forem necessárias no corpo do email, consulte abaixo

#!/bin/bash
>tmp.txt
join -t: cleartext.txt maillist.txt | while read line
do
  echo $line
  USER=$(echo $line | awk -F: '{ print $1 }')
  PSWD=$(echo $line | awk -F: '{ print $2 }')
  EMAILID=$(echo $line | awk -F: '{ print $3 }')
  echo "Hello $(echo $USER | tr a-z A-Z), your password has been changed!!!<br>" >tmp.txt
  echo "<b>Username</b>: $USER<br>" >>tmp.txt
  echo "<b>Password</b>: $PSWD<br>" >> tmp.txt
  cat tmp.txt | mailx -s "$(echo -e 'Password Changed!!!\nContent-Type: text/html')" $EMAILID
done

    
por 06.01.2017 / 20:21